【问题标题】:AttributeError: 'tuple' object has no attribute 'read'AttributeError:“元组”对象没有“读取”属性
【发布时间】:2013-12-22 21:19:39
【问题描述】:

我得到了这段代码的行:

import dropbox

#some lines for initialize API's

download = self.client.get_file_and_metadata(selected_path)
current_working = os.getcwd()
out = open(current_working+self.filename,'w')
out.write(download.read())
out.close()

其中“selected_pa​​th”是我要下载的文件的路径,“current_working”是我要保存文件的路径。 当我运行脚本时,我检索到这个错误:

AttributeError: 'tuple' 对象没有属性 'read'

我要下载的文件是 GPG 加密文件,但我不认为这是问题所在。 对不起我的英语不好。

【问题讨论】:

  • “当我运行脚本时,我得到了这个错误”。 没有。当您运行脚本时,您会得到一个很好的 complete 回溯,而不仅仅是最后一行。如果不是为了帮助您了解正在发生的事情,您为什么认为口译员会为您提供其余信息?那你为什么不在你的问题中复制 full 回溯?

标签: python file download dropbox-api


【解决方案1】:

函数get_file_and_metadata 返回元组:文件和元数据。

从这里:https://www.dropbox.com/developers/core/start/python

除了文件,该方法还返回文件的元数据 在其当前版本中。每次对文件进行更改时, 文件元数据的 rev 字段也会更改。通过保存 下载文件时进行修订,您将能够判断是否 文件已被另一台计算机或设备更新并选择 下载该文件的较新版本。

将您的电话更改为self.client.get_file_and_metadata,如下所示:

download, metadata = self.client.get_file_and_metadata(selected_path)

如果您不需要元数据,或者只使用get_file

download = self.client.get_file(selected_path)

【讨论】:

  • 如果您不需要元数据,也可以直接使用download = self.client.get_file(selected_path)
猜你喜欢
  • 2013-06-21
  • 1970-01-01
  • 2021-02-26
  • 2021-07-30
  • 2013-07-29
  • 2020-08-29
  • 2015-04-22
  • 2019-04-27
相关资源
最近更新 更多