【四二学堂】模拟浏览器爬取糗事百科网

课程视频地址:
https://edu.csdn.net/course/detail/28645

模拟浏览器爬取糗事百科网

当爬取某些网站出现“http.client.RemoteDisconnected”时,表明远程主机关闭了连接。这是因为某些网站采用User-Agent用户代理机制来识别浏览器版本。
运用Python模拟浏览器进行爬虫的步骤如下:

步骤1:运行Python
步骤2:导入要使用的库
import urllib.request
步骤3:设置目标
url=“https://www.qiushibaike.com/”
步骤4:在Python中设置User-Agent字段值。这里将User-Agent设置成Chrome浏览器的用户代理。首先用Chrome登录URL地址,F12,Network。然后刷新当前页面,再单击”http://www.qiushibaike.com”,找到User-Agent的值。存入headers中。
【四二学堂】模拟浏览器爬取糗事百科网
headers=(“User-Agent: Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N)
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.113 Mobile
Safari/537.36”)
步骤5:创建opener对象,并将headers报头信息加载到opener中。
opener=urllib.request.build_opener()
opener.addheaders=[headers]
步骤6:利用opener对象模拟Chrome浏览器爬取目的网页内容。
data=opener.open(url).read()
data=data.decode(“utf-8”,“ignore”)
步骤7:将data数据存储到本地。
fh2=open(“D:/网课系列/大数据系列/Python网络爬虫/2/test.html”,“w”,encoding=“utf-8”)
fh2.write(data)
fh2.close()