简单示例解析python爬虫IP的使用(小白篇)
作者:小白学大数据
这篇文章主要为大家通过简单示例解析python爬虫IP的使用介绍,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
创建一个IP池并对其进行管理
Python爬虫常常会面临自己ip地址被封的情况,也许刚入行的小白就只能等ip解封之后再进行接下来的操作了,但是这样的方式却是最不能借鉴的,万一数据需求量大,那要等到猴年马月呢?所以今天我们就来探讨下如何创建一个IP池并对其进行管理。对刚入行的小白很有帮助,希望大家耐心看下去,需要的朋友可以参考下。
很多的网站都有反爬机制,其中就有这样一条,就是服务器会检查请求的user-agent参数值,如果检查的结果为python,那么服务器就知道这是爬虫,所以为了避免被服务器发现这是爬虫,我们需要添加随机user-agen。这样就可以避免服务器发现这是同一个user-agent发起多次请求。
还有一条就是网站会封IP,一般这样的情况就直接添加代理IP就可以,那么,从哪里获取IP呢?小编用的是亿牛云的这个网址,网址链接为:https://www.16yun.cn/,。
动态转发代理
很多小白会问怎么使用IP,这里介绍一种最简单方便的方式,那就是动态转发代理,我们接下来分享个示例供大家参考下:
#! -- encoding:utf-8 --
import requests import random # 要访问的目标页面 targetUrl = "http://httpbin.org/ip" # 要访问的目标HTTPS页面 # targetUrl = "https://httpbin.org/ip" # 代理服务器(产品官网 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, } # 设置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之后怎么验证使用的ip是否可用?这里我们可以通过访问IP检测网址验证:
http://current.ip.16yun.cn:802,只要返回的是代理IP那么就证明代理使用成功了,我们可以直接去访问需要获取的数据网站了。
以上就是简单示例解析python爬虫IP的使用的详细内容,更多关于python爬虫IP使用的资料请关注脚本之家其它相关文章!