如何将来自多个设备(树莓派)的图像文件上传到一个Dropbox帐户?

时间:2019-04-24 13:00:31

标签: python upload dropbox

我有两个摄像头模块(有线和配置)连接到两个树莓派(每个一个)。这些相机拍摄照片并将图像保存到馅饼上。 我有一个Dropbox帐户。我有一个代码可以将图像文件(保存在指定的文件夹中)从pi上载到我的Dropbox帐户。

因此,当我发出命令时,这两个饼开始同时将图像文件上传到我的Dropbox帐户。

问题就解决了。 总是一个pi成功上传。另一个失败。 我需要帮助。我计划有20台相机。 因此,20个饼应该能够同时将图像上传到一个Dropbox帐户。

感谢您的帮助。 我希望该解决方案简单易行。

代码

import dropbox, sys, os
import os.path
from dropbox.files import WriteMode

dbx=dropbox.Dropbox('my authentication key')
image_dir="/home/pi/somefolder"

for dir, dirs, files in os.walk(image_dir):
     for file in files:
          file_path=os.path.join(dir, file)
          dest_path=os.path.join('/somefolder', file)
          with open(file_path) as f:
               dbx.files_upload(f.read(), dest_path, mute=True, 
               mode=WriteMode('add'))

当我只运行一个pi时,上传效果完美。没问题 当我同时运行两个馅饼时,总是其中之一出现故障。

在这里,我附上了我从故障pi中获得的信息。

错误

Traceback (most recent call last):    

文件“ scanner.py”,第288行,位于dest_path中,静音= True,模式= WriteMode('add'))
files_upload中的文件“ /usr/local/lib/python2.7/dist-packages/dropbox/base.py”,第2293行         f,
请求中的文件“ /usr/local/lib/python2.7/dist-packages/dropbox/dropbox.py”,第274行         timeout = timeout)
在request_json_string_with_retry中的第365行,文件“ /usr/local/lib/python2.7/dist-packages/dropbox/dropbox.py”         timeout = timeout)
在request_json_string中,文件“ /usr/local/lib/python2.7/dist-packages/dropbox/dropbox.py”,第449行         timeout =超时,
帖子中的文件“ /usr/local/lib/python2.7/dist-packages/requests/sessions.py”,第581行         返回self.request('POST',url,data = data,json = json,** kwargs)

请求中的文件“ /usr/local/lib/python2.7/dist-packages/requests/sessions.py”,第533行         resp = self.send(prep,** send_kwargs)
发送中的文件“ /usr/local/lib/python2.7/dist-packages/requests/sessions.py”,行646         r = adapter.send(request,** kwargs)
发送中的文件“ /usr/local/lib/python2.7/dist-packages/requests/adapters.py”,行516         引发ConnectionError(e,request = request) requests.exceptions.ConnectionError:HTTPSConnectionPool(host ='content.dropboxapi.com',port = 443):URL超过最大重试次数:/ 2 / files / upload(由New ConnectionError(':导致:无法建立新连接: [Errno -3]名称解析暂时失败',))

我希望有人可以帮助我轻松一些。提前非常感谢您!

0 个答案:

没有答案