>>> 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)这里我调用API来生成一个二维码,我想保存到一个PNG文件中。
正在生成二维码,但未正确保存。
发布于 2018-01-22 03:45:24
PNG文件包含二进制数据,而不是UTF-8文本。
您需要做的是:
在没有指定编码的情况下,
wb)中使用res.content (二进制)而不是res.text binary,而不使用文本模式(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.content
with open('...', 'wb') as f:
f.write(data)https://stackoverflow.com/questions/48370918
复制相似问题