如何将原始数据存储到Python中的PNG文件中?
这里我调用API来生成一个QR码,我想保存到一个PNG文件中如何将原始数据存储到Python中的PNG文件中?,python,python-3.x,encoding,python-requests,binaryfiles,Python,Python 3.x,Encoding,Python Requests,Binaryfiles,这里我调用API来生成一个QR码,我想保存到一个PNG文件中 正在生成二维码,但未正确保存 PNG文件包含二进制数据,而不是UTF-8文本 您需要做的是: 使用(二进制)而不是(文本) 以二进制模式(wb)代替文本模式(w),而不指定编码 生成的代码应如下所示: >>> def qrcodegenerate(nbr): ... res = requests.get("https://chart.googleapis.com/chart?cht=qr&chs=30
正在生成二维码,但未正确保存 PNG文件包含二进制数据,而不是UTF-8文本 您需要做的是:
wb
)代替文本模式(w
),而不指定编码>>> def qrcodegenerate(nbr):
... res = requests.get("https://chart.googleapis.com/chart?cht=qr&chs=300x330&choe=UTF-8&chl="+str(nbr))
... print(res.url)
... data =res.text
... with open("C:\wamp\www\Paymentapi\qrcode\qr_"+str(nbr)+'.png','w',encoding="utf-8") as f:
... f.write(data)
...
>>> qrcodegenerate(5697)
非常感谢Andrea Corbellini。它很好用,也能解释我的错误。
def qrcodegenerate(nbr):
res = requests.get('https://chart.googleapis.com/chart?cht=qr&chs=300x330&choe=UTF-8&chl=' + str(nbr))
print(res.url)
data = res.content
with open('...', 'wb') as f:
f.write(data)