做为爬虫咱们的都知道不少网站都有反爬措施阻止别人来爬取数据,而封ip是反爬策略中最多见的一种。一般他们的策略都是发现你在短期内过多的访问就会把你的ip封禁,针对这个策略要解决其实个很简单,咱们能够经过限制访问网站的频率或添加IP代理池就OK了。而在爬虫程序中咱们就只须要添加代理就能够搞定了,好比以示例服务器
import requestsdom
import random网站
# 要访问的目标页面代理
targetUrl = "http://www.weibo.com"code
# 要访问的目标HTTPS页面ip
# targetUrl = "https://www.weibo.com" utf-8
# 代理服务器(产品官网 www.16yun.cn)get
proxyHost = "t.16yun.cn"requests
proxyPort = "31111"产品
# 代理隧道验证信息
proxyUser = "16VIZRXL"
proxyPass = "125478"
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,
}
# 设置IP切换头
tunnel = random.randint(1,10000)
headers = {"Proxy-Tunnel": str(tunnel)}
resp = requests.get(targetUrl, proxies=proxies, headers=headers)
print resp.status_code
print resp.text
本文只是粗略的分享了下网站反爬策略中的封ip行为,只须要加上代理就能够轻松解决,以Python为主。但愿能给初入门的你引上一条路,但愿能碰见更多的走在路上的前辈们。