求助 为啥是乱码?
import requestsfrombs4 import BeautifulSoup
#爬取三国演义的所有章节和内容
if __name__ == '__main__':
#UA伪装
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36"
}
#对首页的内容进行爬取
url = "https://www.shicimingju.com/book/sanguoyanyi.html"
page_text = requests.get(url=url,headers=headers).text
#在首页中解析出章节的标题和详情页的url
#1.实例化BeautifulSoup对象,需要将页面的源码数据加载到该对象中
soup = BeautifulSoup(page_text,"lxml")
#解析出章节的标题和详情页的url
li_list = soup.select(".book-mulu > ul > li")
fp = open("./sanguo.txt","w",encoding="UTF-8")
print(li_list)
for li in li_list:
title=li.a.string
detail_url = "https://www.shicimingju.com" + li.a["href"]
#对详情页发起请求,解析出章节内容
detil_nei = requests.get(url=detail_url,headers=headers).text
#解析出详情页中的章节内容
page_text_nei_soup = BeautifulSoup(detil_nei,"lxml")
dic_tag =page_text_nei_soup.find("div",class_="chapter_content")
#解析到了章节的内容
content = dic_tag.text
fp.write(title+":"+content+"\n")
print(title,”爬取成功")
本帖最后由 lihu5841314 于 2021-5-23 15:53 编辑
已找到原因{:1_911:} page_text = requests.get(url=url,headers=headers).text先 encoding 一下 python 文档里该有 encoding 这个的页面吧。 编码的问题 试试用utf-8 原因是啥,是没解压缩吗 夜曲 发表于 2021-5-23 22:33
原因是啥,是没解压缩吗
应该是源码和text的自带的自动编码格式对不上后门用encode='utf-8'指定解决
页:
[1]