【问题标题】:How to get the link of a file using Dropbox python API?如何使用 Dropbox python API 获取文件的链接?
【发布时间】:2016-11-23 01:27:06
【问题描述】:

因此,当使用 Python 版本“下载文件”时,Dropbox API 很奇怪。它提供有关文件的元数据,但实际上并不下载文件。 奇怪考虑到他们的 API 文档说 files_download(path) 说它会在获取元数据时从 Dropbox 下载文件。

k = dbx.files_get_temporary_link('/' + str(message))

这行代码将绕过 files_download,但在元数据停止的地方,更多的开始。运行时会抛出这个类:

GetTemporaryLinkResult(metadata=FileMetadata(name='buiEKTw.png', id='id:8ZPbLGM5GIAAAAAAAAAACg', client_modified=datetime.datetime(2016, 11, 22, 1, 26, 27), server_modified=datetime.datetime(2016, 11, 22, 1, 26, 27), rev='e5047428b', size=905, path_lower='/buiektw.png', path_display='/buiEKTw.png', parent_shared_folder_id=None, media_info=None, sharing_info=None, property_groups=None, has_explicit_shared_members=None), link='https://dl.dropboxusercontent.com/apitl/1/AAAzE5ljMmZZ8jxjcKAh_uIym9Hy7tfC4Z67zvzMpakZDqhoje2BgXE9bTz1-dyy2QIuQJbJKiVfD1RvY4PI4AS1sPhTDRSgqpXMU7XBasZ_gw5lNEpyGiYM-m5lQDozXf6oP7WAJjb1NqwRlQuPfRHpsJq7PRn4alBddVdzb6MZTyBdlvzd55hcxqhbU3d9o84mOR9qGh3zl6rSzYUWbhr7RoQVscpq2qug-lnTelc9eQ')

我只想要类/元数据末尾的链接,但我似乎无法得到它。链接本身是 280 个字符,带引号是 282 个字符。每次获取元数据时,元数据都会发生变化。

【问题讨论】:

  • 你试过k.linkk.link()吗?

标签: python dropbox-api


【解决方案1】:

files_get_temporary_link 方法返回一个GetTemporaryLinkResult。正如萨尔评论的那样,您可以使用.link 从该对象访问link,如下所示:

result = dbx.files_get_temporary_link(filePath)

print(result.link)

请注意,该方法返回文件的链接。如果要直接访问文件内容,可以使用files_download,如下图:

这使用Dropbox Python SDK从远程路径/Homework/math/Prime_Numbers.txt的Dropbox API下载文件到本地文件Prime_Numbers.txt

import dropbox
dbx = dropbox.Dropbox("<ACCESS_TOKEN>")

with open("Prime_Numbers.txt", "wb") as f:
    metadata, res = dbx.files_download(path="/Homework/math/Prime_Numbers.txt")
    f.write(res.content)

&lt;ACCESS_TOKEN&gt; 应替换为您的访问令牌。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多