Python爬虫解决中文乱码

目录

一、中文乱码

二、chardet.detect()解决

三、在页面查找编码格式解决


一、中文乱码

问题在于文本的编码格式不正确

python 复制代码
import requests

url='https://www.shicimingju.com/book/sanguoyanyi.html'
headers={
    'User-Agent':
    'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36 Edg/117.0.2045.47'
}

resp=requests.get(url=url,headers=headers).text
print(resp)

二、chardet.detect()解决

第一步:

在终端输入pip install chardet安装chardet库

pip install chardet

第二步:

import chardet

第三步:

chardet库提供了detect函数,用于检测给定文本的编码格式

encoding=chardet.detect(resp.content)"encoding"

resp.encoding=encoding

python 复制代码
import requests
import chardet

url='https://www.shicimingju.com/book/sanguoyanyi.html'
headers={
    'User-Agent':
    'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36 Edg/117.0.2045.47'
}

resp=requests.get(url=url,headers=headers)
#["encoding"]是一个字典索引操作,用于获取chardet.detect()函数返回的字典中的"encoding"键对应的值 该值表示检测到的编码格式
encoding=chardet.detect(resp.content)["encoding"]
#print(encoding)
resp.encoding=encoding

page_text=resp.text
#print(page_text)

三、在页面查找编码格式解决

或者在页面Ctrl+U,再Ctrl+F,输入charset查找文本编码格式

相关推荐
xxie12379412 分钟前
Python 闭包的调用方法与实践
开发语言·python
HZZD_HZZD13 分钟前
用电行为异常检测VAE-基于PyTorch设计用电行为异常检测模型:从时序特征提取到变分自编码器部署的完整实战
人工智能·pytorch·python
思-无-涯25 分钟前
AI Agent技能编写与质量保障
人工智能·python
2601_956319881 小时前
2026年下半年AI量化学习,分清表达开发和验证
人工智能·python
CTA量化套保2 小时前
最新AI量化效率提升,用示例拆解练习压实路径
人工智能·python
zhiSiBuYu05172 小时前
混合检索实战指南:关键词与向量的完美融合
人工智能·python·机器学习
weixin_413063212 小时前
复现 MatchED 边缘检测模型(单张图片重复8次,训练200 epoch)
python·算法·计算机视觉·边缘检测模型
许彰午2 小时前
74_Python自动化办公之Excel操作
python·自动化·excel
大数据魔法师4 小时前
FastAPI零基础教程(六)- 数据库集成,SQLModel无缝衔接
python·fastapi
山海云端有限公司4 小时前
全平台视频元数据解析 API:从原理到 Python 实战调用
python·http·api·元数据·视频解析·apizero