12IP反爬
IP反爬
http协议:是属于应用层的协议
- 应用层:封装数据
- 传输层:封装端口
- 网络层:封装IP地址
- 数据链路层:封装Mac地址
- 物理层:进行数据传输
通过IP
访问频率来进行反爬,正常的用户一秒钟发送一次请求,我们使用爬虫的话是可以在一秒内发送多次请求的,这个很明显就是一个爬虫的行为。
- 不要你访问他的网址了
- 给你返回一个其他的页面 验证页面
使用代理:ip代理转发我们的请求代替我们访问
记住我们家代理IP只是搞定ip被封的情况
import requests
url = 'http://httpbin.org/get'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36'
}
# 隧道host:http端口
tunnel = 'h875.kdltps.com:15818'
# 用户名密码方式
username = "t17862283917598"
password = "6x0cfnqc"
proxies = {
"http": f"http://{username}:{password}@{tunnel}/",
"https": f"http://{username}:{password}@{tunnel}/"
}
# proxies = {
# "http": "http://%(user)s:%(pwd)s@%(proxy)s/" % {"user": username, "pwd": password, "proxy": tunnel},
# "https": "http://%(user)s:%(pwd)s@%(proxy)s/" % {"user": username, "pwd": password, "proxy": tunnel}
# }
response = requests.get(url, proxies=proxies)
print(response.text)
过几天看看ipv4变不变