小编答应朋友想爬取某某某论文,然后爬取内容竟然是乱码?所以小编就请教老师,自己做笔记总结自己的学习历程。
自己按自己思路执行的代码,然后计算机执行的代码,总有一些差距。具体情况,学习过来的小伙伴都懂。
现象
下面来说说解决办法吧。我们下要先当我们获取的内容为乱码是是因为什么导致的,可能是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)
现象:
如果对你起到帮助,不要忘了点赞,关注,加收藏哦!