- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想将我的文件上传到我的驱动器中。但是在 Pydrive 文档中我发现只有 upload()
函数上传由 drive.CreateFile()
函数创建的文件并更新它,而不是我硬盘中的文件(我自己的文件)。
file1 = drive.CreateFile({'title': 'Hello.txt'}) # Create GoogleDriveFile
instance with title 'Hello.txt'.
file1.SetContentString('Hello World!') # Set content of the file from given
string.
file1.Upload()
我已经在 stackoverflow 中尝试了我的问题的答案,但是出现了一个错误。这是我的代码:
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
#1st authentification
gauth = GoogleAuth()
gauth.LocalWebserverAuth() # Creates local webserver and auto handles
#authentication.
drive = GoogleDrive(gauth)
file1 = drive.CreateFile(metadata={"title": "big.txt"})
file1.SetContentFile('big.txt')
file1.Upload()
文件“big.txt”与我的代码文件位于同一文件夹中。当我运行它时,我得到了这个回溯:
Traceback (most recent call last):
File "C:\Users\**\AppData\Local\Programs\Python\Python36-32\lib\site-
packages\pydrive\files.py", line 369, in _FilesInsert
http=self.http)
File "C:\Users\**\AppData\Local\Programs\Python\Python36-32\lib\site-
packages\oauth2client\_helpers.py", line 133, in positional_wrapper
return wrapped(*args, **kwargs)
File "C:\Users\**\AppData\Local\Programs\Python\Python36-32\lib\site-
packages\googleapiclient\http.py", line 813, in execute
_, body = self.next_chunk(http=http, num_retries=num_retries)
File "C:\Users\**\AppData\Local\Programs\Python\Python36-32\lib\site-
packages\oauth2client\_helpers.py", line 133, in positional_wrapper
return wrapped(*args, **kwargs)
File "C:\Users\**\AppData\Local\Programs\Python\Python36-32\lib\site-
packages\googleapiclient\http.py", line 981, in next_chunk
return self._process_response(resp, content)
File "C:\Users\**\AppData\Local\Programs\Python\Python36-32\lib\site-
packages\googleapiclient\http.py", line 1012, in _process_response
raise HttpError(resp, content, uri=self.uri)
googleapiclient.errors.HttpError: <HttpError 400 when requesting
https://www.googleapis.com/upload/drive/v2/files?
alt=json&uploadType=resumable returned "Bad Request">
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:/Users/**/AppData/Local/Programs/Python/Python36-
32/quickstart.py", line 13, in <module>
file1.Upload()
File "C:\Users\**\AppData\Local\Programs\Python\Python36-32\lib\site-
packages\pydrive\files.py", line 285, in Upload
self._FilesInsert(param=param)
File "C:\Users\**\AppData\Local\Programs\Python\Python36-32\lib\site-
packages\pydrive\auth.py", line 75, in _decorated
return decoratee(self, *args, **kwargs)
File "C:\Users\**\AppData\Local\Programs\Python\Python36-32\lib\site-
packages\pydrive\files.py", line 371, in _FilesInsert
raise ApiRequestError(error)
pydrive.files.ApiRequestError: <HttpError 400 when requesting
https://www.googleapis.com/upload/drive/v2/files?
alt=json&uploadType=resumable returned "Bad Request">
最佳答案
您必须使用 SetContentFile()
设置内容而不是 SetContentString()
:
file1 = drive.CreateFile({'title': 'Hello.txt'})
file1.SetContentFile(path_to_your_file)
file1.Upload()
如文档所述,如果您没有设置 title
和 mimeType
,它们将根据您提供的文件的名称和类型自动设置。因此,如果您想上传与计算机上已有的同名文件,您可以执行以下操作:
file1 = drive.CreateFile()
file1.SetContentFile(path_to_your_file)
file1.Upload()
关于您的第二点,据我所知,GDrive 无法将文件转换为不同的格式。
关于 python : upload my own files into my drive using Pydrive library,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46562255/
我知道如何使用 PyDrive 从我的驱动器下载文件,问题是我需要在共享驱动器上下载(或至少打开)一个 xlsx 文件。到目前为止,这是我下载文件的代码: from pydrive.auth impo
我使用库pydrive对于谷歌驱动器。现在我需要获取 Google 云端硬盘中的所有文件夹(根、父、子)名称。 我发现了这个: self.drive.ListFile().GetList() 但它返回
对不起我的英语。我使用 pydrive 与 google drive api 一起工作。我想获取文件列表。我这样做: return self.g_drive.ListFile({'q': 'tra
我的 Google 云端硬盘看起来像这样: picture1.jpg song1.mp3 a/b/file1.txt a/b/file2.txt a/b/file3.jpg a/b/file4.m4a
我一直在尝试使用 PyDrive 将文件从一个文件夹移动到我的谷歌驱动器中的另一个文件夹 file2 = drive.CreateFile({'id': }) file2['parents']= fi
我正在尝试将文件上传到我的 Google 驱动器,下面的代码有效。 如何指定要上传到哪个文件夹,即驱动器---与我共享--csvFolder from pydrive.auth import Goog
我正在尝试将 .doc 文件作为 html 从 Google 云端硬盘导出到。这是我的代码。我在文档中没有看到任何有关如何将文档下载为 html 的内容。但这里是我到目前为止的代码示例。我不确定 do
我正在尝试对 PyDrive 使用双重/口是心非。但是,我不断收到一条非常神秘的错误消息,告诉我引用 PyDrive 安装联机帮助页。没有提供解决方案。 这是我正在运行的重复命令的输出,包括错误。 $
我正在使用 PyDrive 将文件从我使用 Pyinstaller 打包的桌面 Python 应用程序上传到 GoogleDrive。我想尽可能地隐藏 client_secrets.json,所以我将
我正在使用 PyDrive ( http://pythonhosted.org/PyDrive/ ) 来简化对 Google 云端硬盘的 API 访问,但在尝试从云端硬盘中删除现有文件时遇到了障碍。我
在我的应用程序中,用户 A 使用 PyDrive 和 Google Drive 创建了一个文件,并使用保存到云端硬盘 self.User.GoogleFile.SetContentString(jso
我使用 Python 和 PyDrive 编写了一个程序。该程序捕获图像并将其上传到 Google Drive 上的文件夹。这是我的身份验证和上传的基本代码: gauth = GoogleAuth()
我正在尝试在使用 pydrive 库 (https://pypi.python.org/pypi/PyDrive) 时自动执行 GoogleAuth 过程。 我已经设置了 pydrive 和 goog
我正在尝试使用从(Ubuntu)服务器远程工作的python脚本自动将文件上传到谷歌驱动器。 在我的代码中,我有以下来自 Pydrive 的简单行: from pydrive.auth import
我正在尝试通过 PyDrive 将一个大型 csv 压缩文件(~6GB)上传到 Google Drive,但每次我尝试通过以下方式上传时: file = self.drive.CreateFile({
我正在尝试安装 PyDrive,以便将我的工作文件夹自动备份到 Google 云端硬盘。 我正在尝试使用 pip 在终端中安装 PyDrive,但没有这样的运气。 当我运行时 pip install
我想使用 Google Drive API 使用 cronjob 在其上存储一些备份。我只是不明白如何使用服务帐户使用 PyDrive。当我生成服务帐户文件时,我将它作为我的脚本放在目录中 clien
我正在尝试使用 PyDrive 从 Google Drive 下载文件。我按照指示http://pythonhosted.org/PyDrive/filemanagement.html#downloa
我正在使用 PyDrive 在 Google 云端硬盘中创建文件,但我在处理实际的 Google 文档类型项目时遇到了问题。 我的代码是: file = drive.CreateFile({'titl
我正在使用 pydrive 1.2.1 在 python 3.5.2 中编写一个小脚本,我需要能够删除一个文件,该文件不是存储在我的计算机本地,而是存储在我的 Google Drive 帐户中。 do
我是一名优秀的程序员,十分优秀!