介绍
这篇文章将为大家详细讲解有关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和伪装成浏览器的方法