西拉免费代理IP

你当前的位置:西拉免费代理IP   >   新闻中心   >   Python爬虫如何通过更换IP避开网站的反爬虫机制 (二)

Python爬虫如何通过更换IP避开网站的反爬虫机制 (二)

2019年4月26日 17:54

上篇在Python爬虫如何通过更换IP避开网站的反爬虫机制一里讲到动态IP和拨号VPS,今天第二篇讲随机UA。 

在两篇文章里,所有代码并非全部源码,不保证代码可以直接复制粘贴使用,建议大家理解原理之后,根据自己的爬虫项目需要进行相应的调整。  

 使用随机 UAUA,即 User-Agent ,使用它可以将我们的爬虫伪装成浏览器,让对方以为是真人在使用浏览器访问,从而骗过目标网站的反爬机制。但是使用固定的 UA 去爬也是会有问题的,假如你发现最近几个小时内来访问的几万个用户,用的都是同一个浏览器,你还会认为对面是真人吗?   

所以,为了让我们的爬虫更像真人使用,我们不仅要为它设置 UA,还要使用随机 UA。  

以下是UA 列表,截取了部分,这个在网上随便一找就能找到好多。  

USER_AGENTS = [    'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36 OPR/26.0.1656.60',    'Opera/8.0 (Windows NT 5.1; U; en)',   

 'Mozilla/5.0 (Windows NT 5.1; U; en; rv:1.8.1) Gecko/20061208 Firefox/2.0.0 Opera 9.50',   

 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en) Opera 9.50',    

'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0',   

 'Mozilla/5.0 (X11; U; Linux x86_64; zh-CN; rv:1.9.2.10) Gecko/20100922 Ubuntu/10.10 (maverick) Firefox/3.6.10',   

 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2',    

'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36',   

 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',   

 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.133 Safari/534.16',   

 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.11 TaoBrowser/2.0 Safari/536.11',   

 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.71 Safari/537.1 LBBROWSER',   

 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; LBBROWSER)',   

 'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.84 Safari/535.11 SE 2.X MetaSr 1.0',    

'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; SV1; QQDownload 732; .NET4.0C; .NET4.0E; SE 2.X MetaSr 1.0)',   

 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 UBrowser/4.0.3214.0 Safari/537.36']  

使用的时候,直接使用随机函数 random.choice() 来从列表中选择选择一个。  

使用方法可以参考以下代码:  

user_agent = random.choice(USER_AGENTS)proxy = random.choice(proxyList)url = 'https://blog.csdn.net/wenxuhonghe/article/details/85036674'            headers = {    "Connection": "keep-alive",    "Cache-Control": "max-age=0",    "Upgrade-Insecure-Requests": "1",    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",    "Accept-Language": "zh-CN,zh;q=0.9",    "Cookie": ""    } try:    # 构建一个Handler处理器对象,参数是一个字典类型,包括代理类型和代理服务器IP+PROT    httpproxy_handler = urllib.request.ProxyHandler({"http": proxy})    opener = urllib.request.build_opener(httpproxy_handler)    urllib.request.install_opener(opener)    request = urllib.request.Request(url,headers=headers)    request.add_header("User-Agent", user_agent)    response = urllib.request.urlopen(request)    html = response.read()                    # 解析目标页面,提取相关信息    parse_data(html)     time.sleep(1) except Exception as result:    print ("错误信息:%s"%(result))  


想知道更多代码吗,请关注西拉免费IP代理

阅读 121   

相关推荐

怎么样使用动态拨号vps通过爬虫抓取贴吧数据 怎么样使用动态拨号vps通过爬虫抓取贴吧数据
怎么样使用动态拨号vps通过爬虫抓取贴吧数据

有时需要批量获取数据,如果要获取的网页非常多,一页一页的翻是不是太累了,有没有简单的方法?  当然有,可以利用各种工具,但是呢很多是收费的,或者有限制,还不如自己手动做个爬虫使用,非常简单的,下面小编 . . .

2019年5月11日
网站的反爬虫机制一般都有哪些方式?

 在大数据资源整合的过程中,有爬虫和反爬虫。网站越大,网站越成熟,反爬行动机制越完善,初始IP限制,验证码限制和其他限制。今天我们一起来看看网站上反爬的设置,以及反应方式。 1、动态页面的反爬虫有的时 . . .

2019年4月30日
动态拨号VPS花多少钱购买才算性价比高

 很多人都需要更改IP,例如爬虫注册,刷票收集等。动态VPS服务器也可以更改IP。购买动态VPS需要多少钱?市场上有很多商家的价格看起来合理,太便宜的怕不好用,太贵不划算。如何找到具有高性价比的动态V . . .

2019年4月30日
动态IP拨号vps配置中的IP多少AB段代表什么? 动态IP拨号vps配置中的IP多少AB段代表什么?
动态IP拨号vps配置中的IP多少AB段代表什么?

 随着互联网需求的增加,很多公司和个人都在使用动态拨号VPS,但是有些用户看到拨号vps介绍里面ip段标的几A段、几AB段,却不懂其含义,IPV4协议里面一个完整的ip被三个点分为了4个部分A.B.C . . .

2019年4月30日
什么是个人VPN

 虚拟专用网络(VPN)使客户能够通过社区系统远程安全地获取讨论信息和专用网络。信息受到类似于PC中防火墙的保护,VPN可以屏蔽它。即使VPN正式成为WAN(广域系统),租用代理  保持与私有系统完全 . . .

2019年4月26日
Python爬虫如何通过更换IP避开网站的反爬虫机制(一)

 爬取网站的时候经常会遇到网站上都部署了反爬虫机制,当服务器检测到一段时间内同一个 IP 持续密集的访问网站,则将其判定为爬虫程序,在一段时间内不允许该 IP 地址访问服务器。  这种情况其实可以写个 . . .

2019年4月26日
拨号vps哪家好

  动态vps似乎很简单,但它对运营商的技术水平和服务水平有更高的要求。首先是服务器和宽带的稳定性。在这方面,一些小公司的产品特别不足。产品稳定性无法保证,这对正常使用有较大影响。其次,动态vps对服 . . .

2019年4月26日
有哪些功能是动态IP拨号vps可以使用的

 随着互联网的快速发展,越来越多的用户在在线过程中暴露他们的个人隐私信息。电商担心刷单太多被查,营销害怕刷票力度不够影响排名....这时使用西拉免费动态IP拨号vps是最佳选择,动态拨号vps可以很好 . . .

2019年4月26日
为什么需要VPN

  VPN具有其他使用实例。VPN使客户能够阻止其他人看到他们正在移动的信息,因为链接已经加密。这样可以确保信息安全,特别是在机场和咖啡馆等社区的Wifi系统上,确保没有人窃取您的密码或银行卡号码,并 . . .

2019年4月25日
使用动态IP代理爬取网站的都是哪些爬虫(二)

这里是西拉免费IP代理小编带来的使用动态IP代理爬取网站的都是哪些爬虫第二篇。核心代码实现示例:ProxyWebsite  class ProxyWebsite(object):    def __i . . .

2019年4月25日

新闻中心 代理分享 | 蜘蛛地图

全网最大的免费网页代理ip平台,提供大量免费http代理服务器免费ip代理地址

© 2016 - 2019. 西拉免费代理ip, All rights reserved.

在线客服