现在的网络环境中,需要使用IP的用户也越来越多,像IP被限制,账号被封,隐藏本地IP等等都是需要用到IP代理的。所以有在我们的网络工作中越来越离不开IP代理。我们可以看看哪种代理IP才是自己需要的。
代理IP有独享IP,自然也有共享IP。共享ip,大概意思就是多台设备或终端共用一个ip。而独享ip,就是这个ip只有一个设备或终端使用,其他设备终端无法使用。
那使用代理IP的方式有几种呢?
API提取的优质代理:
API就是url链接,用户的程序需要支持API的读取,定期从url中获取代理IP的相关信息,可以自建IP池管理维护
隧道转发的爬虫代理:
亿牛云爬虫代理IP”通过固定云代理服务地址,建立专线网络链接,代理平台自动实现毫秒级代理IP切换
API的优质代理和隧道转发爬虫代理区别:
传统API提取式代理,通过URL定时获取代理IP信息,需验证IP的可用性、更换代理设置,同时需要设计多线程异步IO,实现代理IP并发处理,不仅繁琐,而且影响效率。
“亿牛云爬虫代理IP”通过固定云代理服务地址,建立专线网络链接,代理平台自动实现毫秒级代理IP切换,保证了网络稳定性和速度,避免爬虫客户在代理IP策略优化上投入精力。
以上都属于动态IP池,网络爬虫可以根据的自己的需求选择适合的产品。以上两种使用IP的方式,是目前为止非常常见的两种方式,为网络爬虫使用代理IP提供了便利。
#! -*- encoding:utf-8 -*-
import requests
import random
import requests.adapters
# 要访问的目标页面
targetUrlList = [
"https://httpbin.org/ip",
"https://httpbin.org/headers",
"https://httpbin.org/user-agent",
]
# 代理服务器(产品官网 www.16yun.cn)
proxyHost = "t.16yun.cn"
proxyPort = "31111"
# 代理验证信息
proxyUser = "username"
proxyPass = "password"
proxyMeta = "http://%(user)s:%(pass)s@%(host)s:%(port)s" % {
"host": proxyHost,
"port": proxyPort,
"user": proxyUser,
"pass": proxyPass,
}
# 设置 http和https访问都是用HTTP代理
proxies = {
"http": proxyMeta,
"https": proxyMeta,
}
# 访问三次网站,使用相同的Session(keep-alive),均能够保持相同的外网IP
s = requests.session()
# 设置cookie
# cookie_dict = {"JSESSION":"123456789"}
# cookies = requests.utils.cookiejar_from_dict(cookie_dict, cookiejar=None, overwrite=True)
# s.cookies = cookies
for i in range(3):
for url in targetUrlList:
r = s.get(url, proxies=proxies)
print r.text