我正在尝试使用python api从Dropbox下载文件。 我的做法和他们的“入门”页面https://www.dropbox.com/developers/core/files#python完全相同 。它适用于简单的文本文件,但在用于媒体文件(如.mp3或.jpg)时会下载损坏的文件。 是否有我遗漏的东西,或下载文件的不同方法? 谢谢, Guyzyl
答案 0 :(得分:2)
Dropbox页面上的示例未针对MP3或JPG等二进制文件进行优化。您应该将out = open('magnum-opus.txt', 'w')
替换为out = open('magnum-opus.txt', 'wb')
。
请参阅Python documentation on the open built-in:
默认设置是使用文字模式,可以转换' \ n'在写作和回读时的字符特定表示。因此,在打开二进制文件时,您应该附加' b'到模式值以二进制模式打开文件,这将提高可移植性。 (即使在不以不同方式处理二进制文件和文本文件的系统上,附加' b'也很有用,它可用作文档。)