1.爬取的中文内容出现乱码
解决方法: 添加代码查看网页的编码方式。运行结果显示,网页编码是ISO-8859-1的模式。
resp = requests.get(url=url, headers=headers)
print(resp.encoding)
在查看源码的编码模式,查看charset可知源码的编码模式是utf-8
通过可知,当前页面的编码是ISO-8859-1,但是网页实际需要的是utf-8,所有我们需要进行转码。
import requests
from bs4 import BeautifulSoup
url = 'https://www.shicimingju.com/book/sanguoyanyi.html'
page_text = requests.get(url)
print(page_text.encoding)
page_text.encoding = 'utf-8'
print(page_text.encoding)
soup = BeautifulSoup(page_text.text, 'lxml')
print(soup)