使用python将视频上传到dropbox的简单代码

时间:2018-02-03 17:31:13

标签: python-3.x dropbox

我一直致力于编写简单的代码,将文件夹中的最新视频上传到Dropbox with python。我差点搞定了,但遇到了两个问题。最大的问题是当视频显示在Dropbox上时无法播放,我相信文件在上传时已损坏。另一个问题是文件名被重命名,我想保留文件名,因为我在名称中添加了一个时间戳,以便在录制视频时轻松记录。 -Thanks

dbx.dropbox.Dropbox('EmptyKey')
allfiles = glob.glob('/home/pi/Documents/CameraFeeds/*.h264')
newestfile = max(allfiles, key=os.path.getctime)
dropbox_path = os.path.join('/*')
with open(newestfile, 'rb') as f:
    dbx.files_upload(f.read(), dropbox_path, mute=True)

1 个答案:

答案 0 :(得分:0)

我不知道您尝试上传的视频的大小,但鉴于simple calculation of filesize for video length,您似乎可能只使用了每次上传150MB的限制dbx.files_upload()。我认为您使用files_upload_session_start()files_upload_session_append_v2()files_upload_session_finish()命令(found here)可以获得更好的结果。

对于在到达Dropbox时重命名的文件,问题在于您的dropbox_path定义。当您致电files_upload()时,f.read()参数只是要上传的原始数据; dropbox_path arg是预期文件名的唯一指示。您需要在newestfile定义中加入dropbox_path(但要小心,如果您正在使用Windows:os.path.join使用\\加入路径,与Dropbox不兼容。)