如何将原始数据存储到Python的PNG文件中?

2024-05-23 20:16:25 发布

您现在位置:Python中文网/ 问答频道 /正文

>>> 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文件。你知道吗

正在生成二维码,但未正确保存。你知道吗


Tags: httpscomdatagetdefchartresrequests
1条回答
网友
1楼 · 发布于 2024-05-23 20:16:25

PNG文件包含二进制数据,而不是UTF-8文本。你知道吗

你需要做的是:

  1. 使用^{}(二进制)而不是^{}(文本)。

  2. 二进制模式(wb)而不是文本模式(w)中的Open the file,不指定编码。

生成的代码应如下所示:

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)

相关问题 更多 >