尝试下载中文页面时(根据元标记似乎是 gb2312)。在我运行下面的代码并在 gEdit 中以 gb2312 格式打开文件后,我得到了乱码,例如 ê×××(ò) 应该是汉字。
这是相关页面的源代码:https ://gist.github.com/anonymous/27663069655db7fd7a19 - 实际站点仅适用于教育机构。
我的代码:
r = requests.post("http://example.com", data=payload, cookies=cookies)
f = open('myfile.txt', 'w')
f.write(r.text.encode('gb2312',errors="ignore"))
f.close()
页面的标题:
{'content-length': '6164', 'x-powered-by': 'ASP.NET', 'date': 'Mon, 11 Mar 2013 05:11:24 GMT', 'cache-control': '私有的,“内容类型”:“文本/html”,“服务器”:“Microsoft-IIS/6.0”}
如果我尝试解码而不是编码,我会在 Python 中收到此错误:
f.write(r.text.decode('gb2312',errors="ignore"))
UnicodeEncodeError:“ascii”编解码器无法对位置 2017-2018 中的字符进行编码:序数不在范围内(128)