目录
一、为什么要使用动态代理ip?
使用它的好处在哪里呢?
- 保护你的网络免受外部攻击
- 屏蔽你的IP地址
- 限制不必要的内容
- 更好的帮助你抓取网络数据
- 绕过目标网站限制。网站一般会限制单个ip请求数量,使用动态ip可以自定义时间更换ip地址,提高爬虫效率。
- 隐藏真实ip地址。出于各种安全原因,有些人选择使用代理来隐藏其真实IP地址。
以上几点,足以知道使用代理动态ip的好处,难不成还用自己电脑的ip呢?ip是能定位到你的好吧,所以咱一般不用自己的本地ip爬(简单的本地爬,某些数据还是要使用代理ip哈)
二、如何申请动态代理ip?
我随便使用的一个代理ip网站。反正你们随便找个代理网站都行。看谁福利多就用谁的咯,这个ipidea 我只是用来测试。
生成代理api
点击生成链接:
认证一下:
再返回,点击生成链接,复制链接(保存在文档):
三、如何使用动态ip?
我们就是用最简单的requests模块:
import requests
然后我们再加上随机请求头模块(反爬用):
from fake_useragent import UserAgent
导入请求的url和随机请求头:
url='https://sjz.anjuke.com/community/p1'
headers={'User-Agent':UserAgent().random}
使用api获取到ip:(记得换成你自己的api)
# proxies = {'协议': '协议://IP:端口号'}
api_url='http://tiqu.ipidea.io:81/abroad?num=1&type=1&lb=1&sb=0&flow=1®ions=&port=1'
res = requests.post(api_url,headers=headers, verify=True)
proxie = "https://%s"%(res.text)
proxies = {'http': proxie}
print(proxies)
请求网址(以安居二手房为例子):
html=requests.get(url=url,headers=headers,proxies=proxies).text
print(html)
完整源码:
import requests
from fake_useragent import UserAgent
url='https://sjz.anjuke.com/community/p1'
headers={'User-Agent':UserAgent().random}
# proxies = {'协议': '协议://IP:端口号'}
api_url='http://tiqu.ipidea.io:81/abroad?num=1&type=1&lb=1&sb=0&flow=1®ions=&port=1'
res = requests.post(api_url,headers=headers, verify=True)
proxie = "https://%s"%(res.text)
proxies = {'http': proxie}
print(proxies)
html=requests.get(url=url,headers=headers,proxies=proxies).text
print(html)
运行如下:
更多案例和具体实战我已经在前面的文章讲过了,这里主要是教一下大家如何使用代理ip,只是在原来的基础上加了一个代理ip。代理ip对于爬虫手来说,用处很大,大家一定要好好学哇!