【问题标题】:How to get (and append) content of a text file on Google Drive如何在 Google Drive 上获取(和附加)文本文件的内容
【发布时间】:2018-08-11 16:48:43
【问题描述】:

这应该是超级简单的,但不知何故我无法自己弄清楚... 我想使用(例如)python 从 Google Drive Api v3 获取 txt 文件的内容。根据文档 (https://developers.google.com/drive/api/v3/reference/files/get) get 方法“通过 ID 获取文件的元数据或 内容”。这是我所拥有的:

body =  service.files().get(fileId="rGCalhPNeL9HejmmHCJhyt2aBRG40hDhb")
print(body)

但这会打印: googleapiclient.http.HttpRequest 对象位于 0x1ed5990 而不是文件内容。我做错了什么?

第二个问题是:我可以在现有的 google drive 文件中添加一个新行吗?我知道如何创建新文件和更新文件(但这会覆盖文件中的所有内容)。有没有办法可以在现有文本文件中添加另一行?

谢谢!

【问题讨论】:

    标签: python google-drive-api google-api-python-client


    【解决方案1】:

    问题一的答案:

    这个修改怎么样?

    从 :
    body =  service.files().get(fileId="rGCalhPNeL9HejmmHCJhyt2aBRG40hDhb")
    
    至 :
    body = service.files().get_media(fileId="rGCalhPNeL9HejmmHCJhyt2aBRG40hDhb").execute()
    

    问题2的答案:

    例如,如果文件是电子表格和幻灯片,则有用于添加内容的 API。但是在文本文件的情况下,因为没有这样具体的API,所以在添加新行时,使用以下流程。

    1. 从文件中下载内容。
    2. 将新行添加到内容中。
    3. 将新内容作为文本文件的更新上传。

    如果这个答案不是你想要的,对不起。

    【讨论】:

    • 非常感谢!这正是我所缺少的:最后是“get_media”而不是“get”和“.execute”。
    • @GoDaddyGo 欢迎您。我很高兴你的问题得到了解决。也谢谢你。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-23
    • 2020-05-12
    • 1970-01-01
    相关资源
    最近更新 更多