我正试图从网站上获取图片而我不知道我做错了什么。 这是我的代码:
import httplib2
h = httplib2.Http('.cache')
response, content = h.request('http://1.bp.blogspot.com/-KSBzFF0bIyU/TtFyj-KgC0I/AAAAAAAABEo/o43IoY_9Bec/s1600/praia-de-ponta-verde-maceio.jpg')
print(response.status)
with open('maceio.jpg', 'wb') as f:
print(content, file = f)
--------------------------------------------------------------------------------
200
Traceback (most recent call last):
File "/home/matheus/workspace/Get Link/new_method_v2.py", line 12, in <module>
print(content, file = f)
TypeError: 'str' does not support the buffer interface
答案 0 :(得分:2)
错误是由以下行引起的:
print(content, file = f)
print
隐含地将名为bytes
的{{1}}对象转换为字符串(content
对象),该对象无法以二进制模式写入文件,因为Python不知道要使用哪种字符编码。
你为什么要绕道str
?只需使用print
方法将内容写入文件:
file.write()