目录
一、中文乱码
二、chardet.detect()解决
三、在页面查找编码格式解决
一、中文乱码
问题在于文本的编码格式不正确
import requestsurl='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
import requests
import chardeturl='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=encodingpage_text=resp.text
#print(page_text)
三、在页面查找编码格式解决
或者在页面Ctrl+U,再Ctrl+F,输入charset查找文本编码格式