gpt4 book ai didi

python - urllib在windows下输出乱码?

转载 作者:可可西里 更新时间:2023-11-01 11:54:42 28 4
gpt4 key购买 nike

我使用下面的代码片段在 linux (debian) 下从网上下载一张图片没有问题。当我在 Windows 中运行完全相同的代码时,生成的图像出现乱码。有什么问题?

import urllib, os
url = "http://www.crummy.com/software/BeautifulSoup/10.1.jpg"
contents = urllib.urlopen (url).read()
fn = os.path.join(os.path.expanduser("~"), "winimagetest")
fh = open(fn, "w");fh.write(contents);fh.close()

目标系统为Windows 7,64位,python安装为32位。 (这没关系,如果 python 是 64 位,也会出现同样的乱码输出)。

我上传的是乱码image :

最佳答案

对于 Windows,您需要以二进制模式打开文件,因为 Windows 区分二进制文件和文本文件。它按原样在 Linux 上运行,因为 Linux 没有这种区别。

换行

fh = open(fn, "w")

fh = open(fn, "wb")

您可能还需要考虑执行以下操作:

with open(fn, "wb") as fh:
fh.write(contents)

因为它会在任何类型的异常情况下为您处理关闭文件。

关于python - urllib在windows下输出乱码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20293369/

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