响应标头在python请求上存在编码错误
一些没有英文的http响应头(使用utf-8)存在编码错误。 原文(2)。핵심정보를 담은 발표 형성평가 5.월 19일) 我在服务器上上传了这个文本 我用get函数响应服务器。(响应标头在python请求上存在编码错误,python,python-requests,Python,Python Requests,一些没有英文的http响应头(使用utf-8)存在编码错误。 原文(2)。핵심정보를 담은 발표 형성평가 5.월 19일) 我在服务器上上传了这个文本 我用get函数响应服务器。(requests.get()) 但我从http响应头中获得了这段文本(2.2.5英寸、3英寸、3英寸、4英寸、5英寸、19英寸) 我将有编码错误的文本转换为ascii到utf8转换器。它成功转换。 可能请求包使用ascii编码获取http响应头 编辑 我尝试了这个代码req.encoding='utf-8',但是这个
requests.get()
)
但我从http响应头中获得了这段文本(2.2.5英寸、3英寸、3英寸、4英寸、5英寸、19英寸)
我将有编码错误的文本转换为ascii到utf8转换器。它成功转换。
可能请求包使用ascii编码获取http响应头
编辑
我尝试了这个代码req.encoding='utf-8'
,但是这个代码不起作用
代码:
您还可以查看我关于github python请求的问题)回答
text.encode(“ISO-8859-1”).decode(“utf-8”)
我刚修好。
我必须用ISO-8859-1编码,用utf-8解码。实际的
url
是什么,我们可以试试吗?@Tarique实际上,你必须知道发送到任何地方。因为我正在为发送到任何地方制作API。要获取URL,您必须从发送一个文件,并使用此程序写入编号和获取链接(转到并运行test-for-requests.py抱歉,如果您不知道如何使用send anywhere,您可以告诉我。我将告诉您如何从send anywhere发送文件。@Tarique谢谢。但我现在已经修复了。您可以查看我是如何修复的。有用,使用python3.6.4和requests=2.21.0,win64默认代码页936。我正在使用请求下载文件,以及什么时候尝试从响应头获取文件名时,我只得到一些不可读的文本。我不知道为什么会发生这种情况,但使用iso8859-1重新编码文本修复了该问题。可能是请求库没有正确处理响应头,并使用iso8859-1对其进行错误解码?
headers = {
'Accept-Encoding': 'gzip, deflate, br',
'Accept-Language': 'ko-KR,ko;q=0.9,en-US;q=0.8,en;q=0.7',
'Content-type': 'text/plain; charset=utf-8'
}
req = requests.get(link, headers=headers, allow_redirects=True)
req.encoding = 'utf-8'
print(req.headers['Content-Disposition']) # this code prints the text has encoding error