爬虫:程序跑一段时间就被封了?
很容易解决
由于:
1、网站服务器在收到请求的同时还能获得请求方的IP地址,当网站服务器检测到短时间内同一IP地址发起了大量请求,就会认为该IP地址的用户是爬虫程序,并对该IP地址进行访问限制。为了规避这种“反爬”手段,可以使用代理服务器代替实际的IP地址来发起请求。
2、很多网站服务器为了防止他人爬取数据,会对发起请求的一方进行身份验证,主要手段就是看请求包的请求头中的User-Agent信息。
因此:使用requests包的headers,proxies参数可以完美规避反爬。
解决方法:
我所使用的版本是python3.9.6,代码如下:
import requests
# 你所请求的网址
url=''
# 按F12,在开发者工具里依次点击network,name,headers,User-Agent
headers = {'User-Agent': ''}
# 代理服务器的ip和端口可以在你个人计算机的设置里找到
proxies = {'http': 'ip:端口'}
r = requests.get(url, headers=headers, proxies=proxies)
print(r.content)
大数据分析萌新,人工智能算法ing

浙公网安备 33010602011771号