我正在尝试通过下载内容然后将它们写入文件来下载 tarball。这基本上是我的代码的工作方式:

from urllib import urlretrieve

contents = urlretrieve('http://example.com/file.tgz')
open('/tmp/my-tar.tgz', 'w').write(contents)

但是,当我这样做时,我在对 TypeError 的调用中收到一个错误(a write ),显示“需要一个字符缓冲区对象”。

我如何将 tarball 的内容写入文件?

最佳答案

From the docs :


write 正在提示,因为它希望获得您尝试编写的内容的内容,但它实际上获得了一个 (filename, headers) 元组。

固定版本:

from urllib import urlretrieve

filename, headers = urlretrieve('http://example.com/file.tgz', '/tmp/my-tar.tgz')

关于python - 如何使用 python 下载 tarball?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25452941/

10-16 17:25