1.python爬虫浏览器伪装

#导入urllib.request模块

import urllib.request

#设置请求头

headers=("User-Agent","Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0")

#创建一个opener

opener=urllib.request.build_opener()

#将headers添加到opener中

opener.addheaders=[headers]

#将opener安装为全局

urllib.request.install_opener(opener)

#用urlopen打开网站

data=urllib.request.urlopen(url).read().decode('utf-8','ignore')

2.设置代理

#定义代理ip

proxy_addr="122.241.72.191:808"

#设置代理

proxy=urllib.request.ProxyHandle({'http':proxy_addr})

#创建一个opener

opener=urllib.request.build_opener(proxy,urllib.request.HTTPHandle)

#将opener安装为全局

urllib.request.install_opener(opener)

#用urlopen打开网站

data=urllib.request.urlopen(url).read().decode('utf-8','ignore')

3.同时设置用代理和模拟浏览器访问

#定义代理ip

proxy_addr="122.241.72.191:808"

#创建一个请求

req=urllib.request.Request(url)

#添加headers

req.add_header("User-Agent","Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)

#设置代理

proxy=urllib.request.ProxyHandle("http":proxy_addr)

#创建一个opener

opener=urllib.request.build_opener(proxy,urllib.request.HTTPHandle)

#将opener安装为全局

urllib.request.install_opener(opener)

#用urlopen打开网站

data=urllib.request.urlopen(req).read().decode('utf-8','ignore')

4.在请求头中添加多个信息

import urllib.request

page_headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0",

"Host":"www.baidu.com",

"Cookie":"xxxxxxxx"

}

req=urllib.request.Request(url,headers=page_headers)

data=urllib.request.urlopen(req).read().decode('utf-8','ignore')

5.添加post请求参数

import urllib.request

import urllib.parse

#设置post参数

page_data=urllib.parse.urlencode([

('pn',page_num),

('kd',keywords)

])

#设置headers

page_headers={

'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0',

'Connection':'keep-alive',

'Host':'www.lagou.com',

'Origin':'https://www.lagou.com',

'Cookie':'JSESSIONID=ABAAABAABEEAAJA8F28C00A88DC4D771796BB5C6FFA2DDA; user_trace_token=20170715131136-d58c1f22f6434e9992fc0b35819a572b',

'Accept':'application/json, text/javascript, */*; q=0.01',

'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8',

'Referer':'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':'None',

'X-Requested-With':'XMLHttpRequest'

}

#打开网站

req=urllib.request.Request(url,headers=page_headers)

data=urllib.request.urlopen(req,data=page_data.encode('utf-8')).read().decode('utf-8')

6.利用phantomjs模拟浏览器请求

#1.下载phantomjs安装到本地,并设置环境变量

from selenium import webdriver

bs=webdriver.PhantomJS()

#打开url

bs.get(url)

#获取网站源码

url_data=bs.page_source

#将浏览到的网站保存为图片

bs.get_screenshot_as_file(filename)

7.phantomjs设置user-agent和cookie

from selenium import webdriver

from 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 Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0")

bs = webdriver.PhantomJS(desired_capabilities=dcap)

bs.get(url)

#删除cookie

bs.delete_all_cookies()

#设置cookie

#cookie格式:在浏览器cookie中查看,一个cookie需要共含以下参数,domain、name、value、path

cookie={

'domain':'.www.baidu.com', #注重前面有.

'name':'xxxx',

'value':'xxxx',

'path':'xxxx'

}

#向phantomjs中添加cookie

bs.add_cookie(cookie)

8.利用web_driver工具

#1.下载web_driver工具(如chromdriver.exe)及对应的浏览器

#2.将chromdriver.exe放到某个目录,如c:\chromdriver.exe

from selenium import webdriver

driver=webdriver.Chrome(executable_path="C:\chromdriver.exe")

#打开url

driver.get(url)

以上这篇Python实现爬虫设置代理IP和伪装成浏览器的方法共享就是小编共享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持乐购源码。

python 伪造源ip_Python实现爬虫设置代理IP和伪装成浏览器的方法共享相关推荐

  1. python爬虫设置代理ip池

    在使用python爬虫的时候,经常会遇见所要爬取的网站采取了反爬取技术,高强度.高效率地爬取网页信息常常会给网站服务器带来巨大压力,所以同一个IP反复爬取同一个网页,就很可能被封,那如何解决呢?使用代 ...

  2. python爬虫设置代理ip池——方法(一)

    """ 在使用python爬虫的时候,经常会遇见所要爬取的网站采取了反爬取技术,高强度.高效率地爬取网页信息常常会给网站服务器带来巨大压力,所以同一个IP反复爬取同一个网 ...

  3. python进行爬虫设置代理ip之后不知道是否已经启用代理ip

    设置代理ip: 根据每个代理平台的格式不同,代理设置的方式也不尽一致,这里进行演示芝麻代理的配置: def ip_get():url = '形成的代理的链接'ip_list_con = request ...

  4. Scrapy爬虫设置代理ip

    在应用爬虫的时候我们经常会遇到ip被封的情况,这样我们想要的数据就不能及时下载下来,那么怎么办呢?当然是使用代理ip了,下面来看看scrapy中怎么使用代理ip. 一.开放代理 import rand ...

  5. Python 爬虫篇 - 通过urllib.request伪装成浏览器绕过反爬虫爬取网页所有连接实例演示,urllib2库的安装

    新版的 python 把 urllib2 改成了 urllib.request,所以直接导入 urllib2 会报错. 这是我通过 chrome92 版本的浏览器发送请求的时候抓到的头部信息,只要我在 ...

  6. 爬虫单个ip代理设置_爬虫怎样设置代理ip池

    在网络迅速发展的今天,互联网企业层出不穷,爬虫工作者也越来越多,大家都知道,代理ip是爬虫工作者的一个有力助手,今天小编在这里就与大家分享一下如何设置代理池以及伪装成浏览器的方法,请看下面的介绍. 1 ...

  7. python爬虫使用代理ip_python爬虫如何设置代理ip

    python爬虫设置代理ip的方法:首先写入获取到的ip地址到proxy:然后用百度检测ip代理是否成功,并请求网页传的参数:最后发送get请求,并获取返回页面保存到本地. [相关学习推荐:pytho ...

  8. python爬虫浏览器伪装和设置代理ip

    1.python爬虫浏览器伪装 #导入urllib.request模块 import urllib.request#设置请求头 headers=("User-Agent",&quo ...

  9. 干货|Python爬虫如何设置代理IP

    在学习Python爬虫的时候,经常会遇见所要爬取的网站采取了反爬取技术导致爬取失败.高强度.高效率地爬取网页信息常常会给网站服务器带来巨大压力,所以同一个IP反复爬取同一个网页,就很可能被封,这里讲述 ...

  10. python设置电脑ip代理_设置代理IP在Python中使用

    在Pyhton中要怎么使用代理IP?我们经常说代理IP能够让Python更好的发挥爬虫效果,首先我们要懂得如何在python语言中设置代理IP来利用. 1.urllib模块设置代理 如果我们频繁用一个 ...

最新文章

  1. 应用Etherchannel扩展企业服务的高可用性
  2. Using rqt_console and roslaunch
  3. java中什么方法用来清空流_这个真的写的很细,JavaIO中的常用处理流,看完只有10%的人还不懂了...
  4. python函数调用的一般形式_Python的函数的定义与使用示例
  5. python3.6字典有序_为什么Python3.6字典变得有序了?
  6. arcore之路-unity开发从入门到实践_AR开发之路——准备工作
  7. 4n35光耦引脚图_光耦合器隔离技术在工业环境中的应用!-先进光半导体
  8. vue2.0_前端跨域解决方案之proxy代理
  9. 如何用java POI在excel中画线_Java中使用POI在Excel单元格中画斜线—XLS格式
  10. 每一个成年男人在算法中都是好色之徒
  11. 自定义制作音频播放器_使用HTML5制作音频播放器,第1部分:功能和设计
  12. 资金存管,专治各种预付无良商家卷款跑路
  13. 从“中央厨房”看媒体深度融合
  14. 【数学建模】基于matlab武汉地铁2号线路线地图动态模拟【含Matlab源码 1092期】
  15. 人工智能-深度学习:神经网络模型压缩技术(Network Compression)
  16. SSR(服务端渲染)、CSR(客户端渲染)和预渲染
  17. redis客户端连接,最大连接数查询与设置
  18. Windows下kali子系统安装教程
  19. pdf转换成word转换器官方版
  20. 生产力工具 - Utools的使用与安装

热门文章

  1. 面试的反杀-你有没有想要问我的
  2. [日推荐]『51好书推荐』专治假期综合症~
  3. yar php使用,PHP yar的使用简介
  4. 基于cesium的三维管线系统综述
  5. 解决:unable to start embedded tomcat
  6. Lua实现简易飞机大战
  7. 【NOIP2018模拟赛2018.8.28】video
  8. tenacity 报错_Tenacity
  9. 如何创建Vue脚手架以及关闭语法检查
  10. 计算机每天早上自动开机,win10设置每天自动开机(电脑可以设置自动开机时间)...