从树莓派上传文件到谷歌云盘

0 投票
1 回答
2989 浏览
提问于 2025-04-17 21:03

我正在使用mjpg-streamer从USB摄像头捕捉图像,现在一切运行得很好。接下来,我想把所有捕捉到的图像压缩一下,然后发送到谷歌云端硬盘,但我不知道该怎么做。

目前,我正在尝试一个用Python写的示例,链接在这里:点击这里查看更新。 当我尝试使用以下代码上传文档时:

upload_doc = client.CreateResource(doc, create_uri=create_uri, media=media)

我遇到了以下错误:

Traceback (most recent call last):
File "./test.py", line 38, in <module>
upload_doc = client.CreateResource(doc, create_uri=create_uri, media=media)
File "/usr/local/lib/python2.7/dist-packages/gdata/docs/client.py", line 300, in create_resource
return uploader.upload_file(create_uri, entry, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/gdata/client.py", line 1085, in upload_file
start_byte, self.file_handle.read(self.chunk_size))
File "/usr/local/lib/python2.7/dist-packages/gdata/client.py", line 1044, in  upload_chunk
raise error
gdata.client.RequestError: Server responded with: 400,

[编辑] 我成功地将一个zip文件上传到谷歌云端硬盘,抱歉我之前的错误。我没有正确指定文件夹的路径。

DOC_TITLE='a.jpg.tar'
LOCAL_FILE='/home/Desktop/webserver-cam/a.jpg.tar'
doc = gdata.docs.data.Resource(type='document', title=DOC_TITLE)
media = gdata.data.MediaSource()
media.SetFileHandle(LOCAL_FILE, 'application/octet-stream')
create_uri = gdata.docs.client.RESOURCE_UPLOAD_URI + '?convert=false'
upload_doc = client.CreateResource(doc, create_uri=create_uri, media=media)

1 个回答

0

要压缩文件,你可以使用像WinRAR这样的命令行工具。比如,你可以输入这个命令:rar a -r yourfiles.rar *.txt c:\yourfolder。这个命令的意思是把指定文件夹里的所有文本文件压缩成一个叫做yourfiles.rar的文件。你可以通过你的程序来调用这些命令,比如使用system这个方法。

撰写回答