gpt4 book ai didi

python - 将 html 解码字符串写入文件和将 html 二进制数据直接写入文件之间有什么区别?

转载 作者:可可西里 更新时间:2023-11-01 17:05:39 26 4
gpt4 key购买 nike

代码:

from urllib import request
response = request.urlopen('http://www.amazon.com/')
body = response.read()
with open('test.html', 'wb') as f:
f.write(body)
with open('test2.html', 'w') as f:
f.write(body.decode('utf-8'))

有什么不同或者需要注意什么吗?

最佳答案

第一种方式

with open('test.html', 'wb') as f:
f.write(body)

只是保存你下载的二进制数据。

第二种方式

with open('test2.html', 'w') as f:
f.write(body.decode('utf-8'))

假设数据是 UTF-8,尝试将这些 UTF-8 字节解码为 Unicode 文本,然后将其重新编码为您的默认文件编码,如 locale.getpreferredencoding(False) 所指定>。因此,如果数据已经是 UTF-8,它会浪费时间对其进行解码和重新编码。如果它不是 UTF-8,那么它指定了错误的编码来对其进行解码。如果文件只包含普通的 7 位 ASCII 数据,那将工作正常,但否则它会给出错误的结果,或引发 UnicodeDecodeError

关于python - 将 html 解码字符串写入文件和将 html 二进制数据直接写入文件之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45451746/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com