Python如何实现爬虫设置代理IP和伪装成浏览器的方法

  介绍

这篇文章将为大家详细讲解有关Python如何实现爬虫设置代理IP和伪装成浏览器的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

<强> 1。python爬虫浏览器伪装

#导入urllib.request模块   import  urllib.request   #设置请求头   头=(“User-Agent",“Mozilla/5.0, (Windows  NT  6.1;, WOW64), AppleWebKit/537.36, (KHTML, like 壁虎),Chrome/49.0.2623.221  Safari/537.36, SE  2. x  MetaSr  1.0“)   #创建一个   刀=urllib.request.build_opener ()   #将头添加到比赛中   opener.addheaders=[标题]   #将刀安装为全局   urllib.request.install_opener(刀)   #用urlopen打开网页   data=https://www.yisu.com/zixun/urllib.request.urlopen (url) .read () .decode (“utf - 8”、“忽略”)

<强> 2。设置代理

#定义代理ip   proxy_addr=?22.241.72.191:808"   #设置代理   代理=urllib.request.ProxyHandle ({& # 39; http # 39;: proxy_addr})   #创建一个   urllib.request.HTTPHandle刀=urllib.request.build_opener(代理)   #将刀安装为全局   urllib.request.install_opener(刀)   #用urlopen打开网页   data=https://www.yisu.com/zixun/urllib.request.urlopen (url) .read () .decode (“utf - 8”、“忽略”)

<强> 3。同时设置用代理和模拟浏览器访问

#定义代理ip   proxy_addr=?22.241.72.191:808"   #创建一个请求   要求=urllib.request.Request (url)   #添加标题   req.add_header (“User-Agent"“Mozilla/5.0, (Windows  NT  6.1;, WOW64), AppleWebKit/537.36, (KHTML, like 壁虎)   #设置代理   代理=urllib.request.ProxyHandle (“http" proxy_addr):   #创建一个   urllib.request.HTTPHandle刀=urllib.request.build_opener(代理)   #将刀安装为全局   urllib.request.install_opener(刀)   #用urlopen打开网页   data=https://www.yisu.com/zixun/urllib.request.urlopen(点播).read () .decode (“utf - 8”、“忽略”)

<强> 4。在请求头中添加多个信息

import  urllib.request   page_headers={“User-Agent":“Mozilla/5.0, (Windows  NT  10.0;, WOW64), AppleWebKit/537.36, (KHTML, like 壁虎),Chrome/49.0.2623.221  Safari/537.36, SE  2. x  MetaSr  1.0“,   ,,,,,,“Host":“www.baidu.com"   ,,,,,,“Cookie":“xxxxxxxx"   ,,,,,,}   要求=urllib.request.Request (url,头=page_headers)   data=https://www.yisu.com/zixun/urllib.request.urlopen(点播).read () .decode (“utf - 8”、“忽略”)

<强> 5。添加职位请求参数

import  urllib.request   import  urllib.parse   #设置后参数   page_data=https://www.yisu.com/zixun/urllib.parse.urlencode ([   (pn, page_num),   (kd的关键词)   ])   #设置标头   page_headers={   “用户代理”:“Mozilla/5.0 (Windows NT 6.1;WOW64) AppleWebKit/537.36 (KHTML,像壁虎)Chrome/49.0.2623.221 Safari 537.36 SE 2。X MetaSr 1.0”,   “连接”:“保活”,   “主机”:“www.lagou.com”,   “起源”:“https://www.lagou.com”,   “饼干”:“JSESSIONID=ABAAABAABEEAAJA8F28C00A88DC4D771796BB5C6FFA2DDA;user_trace_token=20170715131136 - d58c1f22f6434e9992fc0b35819a572b’,   “接受”:“application/json、text/javascript */*;q=0.01”,   “内容类型”:“应用程序/x-www-form-urlencoded;charset=utf - 8 ',   “推荐人”:“https://www.lagou.com/jobs/list_%E6%95%B0%E6%8D%AE%E6%8C%96%E6%8E%98?labelWords=&fromSearch=true&suginput=?   “X-Anit-Forge-Token”:“没有”,   “X-Requested-With”:“XMLHttpRequest”   }   #打开网页   要求=urllib.request.Request (url,头=page_headers)   data=urllib.request.urlopen(要求、数据=page_data.encode (utf - 8)) .read () .decode (utf - 8)

<强> 6。利用phantomjs模拟浏览器请求

# 1。下载phantomjs安装到本地,并设置环境变量   得到selenium  import  webdriver   b=webdriver.PhantomJS ()   #打开网址   bs.get (url)   #获取网页源码   url_data=https://www.yisu.com/zixun/bs.page_source   #将浏览到的网页保存为图片   bs.get_screenshot_as_file(文件名)

<强> 7。phantomjs设置用户代理和饼干

得到selenium  import  webdriver   得到selenium.webdriver.common.desired_capabilities  import  DesiredCapabilities   时间=dcap  dict (DesiredCapabilities.PHANTOMJS)   dcap [“phantomjs.page.settings.userAgent"],=, (“Mozilla/5.0, (Windows  NT  10.0;, WOW64), AppleWebKit/537.36, (KHTML, like 壁虎),Chrome/49.0.2623.221  Safari/537.36, SE  2. x  MetaSr  1.0“)   时间=bs  webdriver.PhantomJS (desired_capabilities=dcap)   bs.get (url)   #删除饼干   bs.delete_all_cookies ()   #设置饼干   #饼干格式:在浏览器cookie中查看,一个饼干需要包含以下参数,域,名称、值、路径   饼干={   & # 39;才能域# 39;:& # 39;.www.baidu.com& # 39;,, #注意前面有。   & # 39;才能名字# 39;:& # 39;xxxx # 39;,,   & # 39;才能值# 39;:& # 39;xxxx # 39;,,   & # 39;才能path & # 39;: & # 39; xxxx # 39;   ,,}   #向phantomjs中添加饼干   bs.add_cookie(饼干)

Python如何实现爬虫设置代理IP和伪装成浏览器的方法