爬虫反爬之代理IP
爬虫反爬之代理IP
代理IP其实本就是在requests模块中的参数
定义: 代替原来的IP地址去对接网络的IP地址。
作用: 隐藏自身真实IP,避免被封。
-
获取代理IP网站
西刺代理、快代理、全网代理、代理精灵。。。
-
参数
proxies
-
参数类型
1、语法结构 proxies = { '协议':'协议://IP:端口号' } 2、示例 proxies = { 'http':'http://IP:端口号', 'https':'https://IP:端口号' }
- 使用免费普通代理IP访问测试网站: http://httpbin.org/get
import requests
url = 'http://httpbin.org/get'
headers = {
'User-Agent':'Mozilla/5.0'
}
# 定义代理,在代理IP网站中查找免费代理IP
proxies = {
'http':'http://115.171.85.221:9000',
'https':'https://115.171.85.221:9000'
}
html = requests.get(url,proxies=proxies,headers=headers,timeout=5).text
print(html)
-
私密代理
proxies = { '协议':'协议://用户名:密码@IP:端口号' } proxies = { 'http':'http://用户名:密码@IP:端口号', 'https':'https://用户名:密码@IP:端口号' }
由于资金有限,不能购买10块钱的巨额代理,瞎编用户名及密码,仅仅示例而已
import requests url = 'http://httpbin.org/get' proxies = { 'http': 'http://xxxxxxx:xxxxxxx@122.114.67.136:16819', 'https':'https://xxxxxxx:xxxxxxx@122.114.67.136:16819', } headers = { 'User-Agent' : 'Mozilla/5.0', } html = requests.get(url,proxies=proxies,headers=headers,timeout=5).text print(html)
当然,穷人有穷人的做法,可以在代理平台上使用爬虫爬取代理IP,然后持续更新即可