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

时间:2013-12-22 21:19:39

标签: python file download dropbox-api

我有这段代码:

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加密文件,但我认为不是这个问题。 抱歉我的英语不好。

1 个答案:

答案 0 :(得分:4)

功能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)