使用Python将文件上传到Google Drive
这篇文章将教我们如何使用Python将文件上传到Google Drive。为了实现这一目标,我们将利用Google Drive的API。
因此,去谷歌开发者控制台,创建一个新的项目。这可能需要五到十秒,甚至几分钟的时间。
使用Python将文件上传到Google Drive
Python是一种流行的编程语言,因为它有许多功能和库,可以用于各种用途。将文件上传到Google Drive的能力是其服务之一。
在很多情况下,我们可能需要上传文件到Google Drive。例如,如果我们的电脑出了问题,我们可能想与另一个人分享文件或创建一个备份副本。
无论出于何种动机,使用Python将文件上传到Google Drive是一个简单的过程。下面几段将演示如何执行这项任务。
在我们开始之前,我们需要准备一些东西。首先,我们需要在每台电脑上预装Python。
如果我们还没有安装,我们可以从Python网站上下载它。
接下来,为了访问Google Drive,我们首先需要一个Gmail账户。我们将假定我们每个人都使用Gmail。所以我们开始吧。
第一步:谷歌API游乐场
我们可以通过搜索谷歌找到更多关于Google API Playground
。我们必须点击第一个链接才能进一步前进。
选择第一个链接后,我们会自动进入下一个页面,如下图所示:
第二步:Google Drive API
在Google Developers
页面,我们必须在其他选项中找到Drive
API的方法。
我们将搜索一个名为Drive API 3
的选项并选择它。当我们选择它时,一个链接列表将出现在我们面前。
我们必须选择链接列表中出现的第一个链接。如果我们想选择什么,我们需要先点击它,然后我们会看到它旁边出现一个复选标记。
因此,在这里我们将点击第一个链接。
经过大约三到五秒的短暂等待,我们将被重定向到我们的Gmail账户。
第3步:Gmail账户
点击我们要上传文件到其驱动器的Gmail账户,然后按照屏幕上的指示操作。屏幕上会有两个选项,Cancel
和Allow
,显示在屏幕上。
要继续,我们必须从下拉菜单中选择Allow
。当我们点击谷歌账户时,Google Auth
,将询问我们是否要允许该操作。
第四步:授权代码
当我们最终屈服并点击Allow
按钮时,我们将被重定向到一个新的页面,在那里我们可以检索到我们的许可代码。
另一方面,我们不会复制它,因为我们不需要授权码。相反,我们将点击交易授权码的按钮来访问该令牌。
点击该按钮后,我们将得到访问令牌。
在研究Python代码的时候,我们将需要制作一份访问令牌的副本,并将其存放在安全的地方。我们将使用Python来促进文件上传到我们的Google Drive,而访问令牌将是必需的。
用于在Google Drive中上传文件的Python代码
第1步:库
首先,导入所需的库和模块。在这种情况下,我们必须导入JSON
和requests
。
我们使用JSON
来上传文件,使用requests
来请求API来允许我们上传文件。
示例代码:
import json
import requests
第2步:访问令牌
其次,我们将建立一个字典,并使用访问令牌作为其中一个键的值。在这种情况下,授权是键,访问令牌是值。
示例代码:
headers = {"Authorization": "Bearer Paste your access token here"}
我们可以在Bearer
,只用空格复制和粘贴访问令牌。
第三步:文件名
现在我们可以创建另一个字典,给我们要上传的文件起个名字。
示例代码:
para = {
"name": "##name for python uploaded file####",
}
第4步:路径
现在我们必须访问我们要上传的文件。为此,我们必须提供该文件的路径。
Python 将遵循该路径并到达该文件以打开它。
示例代码:
files = {
'data': ('metadata', json.dumps(para), 'application/json; charset=UTF-8'),
'file': open("Pythonfile.jpg", "rb")
}
第5步:请求
现在我们将使用Python的requests
模块来请求Google Drive APIs来上传文件。
示例代码:
r = requests.post(
"https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",
headers=headers,
files=files
)
第6步:打印
现在我们将上述所有步骤与运行代码相结合。最终,我们将使用print
语句来查看我们的代码是否有效。
示例代码:
import json
import requests
headers = {"Authorization": "Bearer Paste your access token here"}
para = {
"name": "##name for python uploaded file####",
}
files = {
'data': ('metadata', json.dumps(para), 'application/json; charset=UTF-8'),
'file': open("Pythonfile.jpg", "rb")
}
r = requests.post(
"https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",
headers=headers,
files=files
)
print(r.text)
输出:
{
"kind": "drive#file",
"id": "1Furfhe8BFbkEhXn1xcYPr8jYAACNpfV7p",
"name": "##python uploaded image####",
"mimeType": "image/jpeg"
}
如果我们得到这样的输出,没有错误,我们的代码就能正常工作,我们想要上传的文件必须上传到Google Drive。
第7步:验证
我们可以去检查Google Drive来验证文件是否被上传。通过上述步骤,我们100%确定我们的文件会被上传至驱动器。
使用Python,我们现在可以将文件上传到Google Drive。设置这个程序很容易,只需要几分钟,这就是它的全部内容。