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查找文本编码格式

相关推荐
JUNAI_Strive_ving10 分钟前
番茄小说逆向爬取
javascript·python
彤银浦11 分钟前
python学习记录7
python·学习
简单.is.good32 分钟前
【测试】接口测试与接口自动化
开发语言·python
Envyᥫᩣ1 小时前
Python中的自然语言处理:从基础到高级
python·自然语言处理·easyui
哪 吒1 小时前
华为OD机试 - 几何平均值最大子数(Python/JS/C/C++ 2024 E卷 200分)
javascript·python·华为od
我是陈泽1 小时前
一行 Python 代码能实现什么丧心病狂的功能?圣诞树源代码
开发语言·python·程序员·编程·python教程·python学习·python教学
hakesashou1 小时前
python全栈开发是什么?
python
创作小达人1 小时前
家政服务|基于springBoot的家政服务平台设计与实现(附项目源码+论文+数据库)
开发语言·python
ZPC82102 小时前
Python使用matplotlib绘制图形大全(曲线图、条形图、饼图等)
开发语言·python·matplotlib
镜花照无眠2 小时前
Python爬虫使用实例-mdrama
开发语言·爬虫·python