Я использую python 2.7 Wrapper из Mega Api в Ubuntu. С помощью следующего кода я мог бы загрузить набор файлов в свою учетную запись Mega, однако я хотел бы знать, как я могу загружать файлы в определенную папку в моей учетной записи.
from mega import Mega
import os
from os import listdir
from os.path import isfile, join
mega = Mega()
mega._login_user('email','password')
def absoluteFilePaths(directory):
for dirpath,_,filenames in os.walk(directory):
for f in filenames:
yield os.path.abspath(os.path.join(dirpath, f))
directory = '/home/caioignm/test_folder'
file_path_generator = absoluteFilePaths(directory)
for file_path in file_path_generator:
mega.upload(file_path)
В моей учетной записи Mega есть одна папка «Личные» с другой папкой внутри «Каникулы», в которой хранятся все мои файлы. Когда я загружаю без ссылки на путь назначения, файлы хранятся в корневом каталоге.
Я пытался следовать справочным инструкциям мегапакета, но не понял, как установить папку назначения для моих файлов.
Help on method upload in module mega.mega:
upload(self, filename, dest=None, dest_filename=None) method of mega.mega.Mega instance
##########################################################################
# UPLOAD
Выполняя mega.upload('filename', 'Personal/Vacations'), я не получал сообщения об ошибке, но мои файлы тоже не были загружены
Не работает. При этом файлы не выгружаются
Какую оболочку Python для Mega api вы используете? Существует множество различных Python-оболочек MEGA API. Насколько я знаю, это один: github.com/richardARPANET/mega.py/blob/master/src/mega/mega. py, а это еще один: github.com/meganz/sdk/tree/develop/bindings/python, а также некоторые другие версии, я их не перечисляю.





Upload a file to a destination folder:
folder = m.find('my_mega_folder') m.upload('myfile.doc', folder[0])
Источник: https://pypi.org/project/mega.py/
Это было так просто, вот так:
Folder = mega.find('my_mega_folder')
mega.upload('yourfile.txt', Folder[0])
Я добавил это в ваш код:
from mega import Mega
import os
from os import listdir
from os.path import isfile, join
mega = Mega()
mega._login_user('email','password')
def absoluteFilePaths(directory):
for dirpath,_,filenames in os.walk(directory):
for f in filenames:
yield os.path.abspath(os.path.join(dirpath, f))
directory = '/home/caioignm/test_folder'
file_path_generator = absoluteFilePaths(directory)
Folder = mega.find('your_folder') #change it with the folder in your mega
for file_path in file_path_generator:
mega.upload(file_path, Folder[0])
Попробуйте
mega.uploadfile('filename', 'Personal/Vacations')