小编答应朋友想爬取某某某论文,然后爬取内容竟然是乱码?所以小编就请教老师,自己做笔记总结自己的学习历程。

python处理乱码

自己按自己思路执行的代码,然后计算机执行的代码,总有一些差距。具体情况,学习过来的小伙伴都懂。
在这里插入图片描述
现象在这里插入图片描述

下面来说说解决办法吧。我们下要先当我们获取的内容为乱码是是因为什么导致的,可能是requests.text的解码方式不正确,要看html中的字符编码方式。点击F12——>点进Console——>输入document.charset 如图看见编码格式是“GBK”在这里插入图片描述
这个时候我们就要看pypi.org中的requests库。(老师说的就官网找的东西权威,网不好的还是多看CSDN上的大牛写好的博客吧)
在这里插入图片描述
所以我们需要手动设置编码方式:

'''
	作者:ls富
	时间:2021/1/9
'''
import requests
from bs4 import BeautifulSoup#导入模块


url="https://www.unjs.com/lunwen/f/20191111001204_2225087.html"
headers= {
            'User-Agent': "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.67 Safari/537.36 Edg/87.0.664.47"
}#模拟的服务器头



html = requests.get(url,headers=headers)

#html.content="utf-8"#对编码以utf-8

Html=html.text.encode('iso-8859-1').decode('gbk')#对编码格式为gbk方式读取
soup=BeautifulSoup(Html,'html.parser')  # BeautifulSoup打看网页
soupl = soup.select(".title")#css选择器选择需要内容
print(soupl)

现象:
在这里插入图片描述
如果对你起到帮助,不要忘了点赞,关注,加收藏哦!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐