python requests请求得到乱码解决方法

今天先说经常遇到的,后面遇到的且解决的再补充

乱码信息:

在使用 requests 库发送 HTTP 请求时,得到的响应数据可能出现乱码,通常是由于以下几种情况导致的:

  1. 服务器未指定正确的编码: 服务器返回的数据没有明确指定编码,或者指定的编码不正确。

  2. 响应头中的编码信息不正确: 服务器在响应头中指定的 Content-Typecharset 与实际数据的编码不匹配。

  3. 网页内容中的编码声明与实际编码不一致: 有时候网页内容本身会包含一个 <meta charset="..."> 标签,声明的编码与实际编码不一致。

  4. 自动检测编码失败requests 库有时无法自动正确检测编码,需要手动指定编码。

以下是如何处理这些情况的详细方法:

1.查看响应头中的编码信息

import requests

response = requests.get('https://example.com')
print(response.headers.get('Content-Type'))

2.手动设置编码,(再网页中或爬取的HTML标签中看到)

import requests

response = requests.get('https://example.com')
response.encoding = 'utf-8'  # 或其他正确的编码
print(response.text)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值