五种代理IP proxy的设置方法
我们在制作爬虫爬取想要的资料时,由于是计算机自动抓取,强度大、速度快,通常会给网站服务器带来巨大压力,所以同一个IP反复爬取同一个网页,就很可能被封,在这里介绍相关的技巧,以免被封;但在制作爬虫时,还是要适当加入延时代码,以减少对目标网站的影响。
一、requests设置代理:
import requests
proxies = { “http”: “http://192.10.1.10:8080”, “https”: “http://193.121.1.10:9080”, }
requests.get(“http://targetwebsite.com”, proxies=proxies)
二、Selenium+Chrome设置代理:
from selenium import webdriver
PROXY = “192.206.133.227:8080”
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument(’–proxy-server={0}’.format(PROXY))
browser = webdriver.Chrome(chrome_options=chrome_options)
browser.get(‘www.targetwebsize.com’)
print(browser.page_source)
brsowser.close()
三、Selenium+Phantomjs设置代理:
# 利用DesiredCapabilities(代理设置)参数值,重新打开一个sessionId.
proxy=webdriver.Proxy()
proxy.proxy_type=ProxyType.MANUAL
proxy.http_proxy=‘192.25.171.51:8080’
# 将代理设置添加到webdriver.DesiredCapabilities.PHANTOMJS中
proxy.add_to_capabilities(webdriver.DesiredCapabilities.PHANTOMJS)
browser.start_session(webdriver.DesiredCapabilities.PHANTOMJS)
browser.get(‘http://www.targetwebsize.com’)
print(browser.page_source)
# 还原为系统代理只需将proxy_type重新设置一次
proxy.proxy_type=ProxyType.DIRECT
proxy.add_to_capabilities(webdriver.DesiredCapabilities.PHANTOMJS)
browser.start_session(webdriver.DesiredCapabilities.PHANTOMJS)
四、爬虫框架scrapy设置代理:
在setting.py中添加代理IP
PROXIES = [‘http://173.207.95.27:8080’,
‘http://111.8.100.99:8080’,
‘http://126.75.99.113:8080’,
‘http://68.146.165.226:3128’]
而后,在middlewares.py文件中,添加下面的代码。
import scrapy from scrapy
import signals
import random
classProxyMiddleware(object):
‘’’ 设置Proxy ‘’’
def__init__(self, ip):
self.ip = ip
@classmethod
deffrom_crawler(cls, crawler):
return cls(ip=crawler.settings.get(‘PROXIES’))
defprocess_request(self, request, spider):
ip = random.choice(self.ip)
request.meta[‘proxy’] = ip
最后将我们自定义的类添加到下载器中间件设置中,如下。
DOWNLOADER_MIDDLEWARES = { ‘myproject.middlewares.ProxyMiddleware’: 543,}
五、Python异步Aiohttp设置代理:
proxy=“http://192.121.1.10:9080”
asyncwithaiohttp.ClientSession()assession:
asyncwithsession.get(“http://python.org”,proxy=proxy)asresp:
print(resp.status)
# https方法一:
# connector = SocksConnector.from_url('socks5://localhost:1080', rdns=True)
# async with aiohttp.ClientSession(connector=connector) as sess:
# https方法二:
async with aiohttp.ClientSession() as session:session.proxies = {'http': 'socks5h://127.0.0.1:1080','https': 'socks5h://127.0.0.1:1080'}headers = {'content-type': 'image/gif','User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36'}cookies = {'cookies_are': 'working'}# proxy = "http://127.0.0.1:1080"with async_timeout.timeout(10):#设置请求的最长时间为10s# async with sess.get(url, proxy="http://54.222.232.0:3128") as res:async with session.get(url,headers=headers,cookies=cookies, verify_ssl=False) as res:text = await res.text()print(text)
◼️一、requests设置代理:
◼️二、Selenium+Chrome设置代理:
◼️三、Selenium+Phantomjs设置代理:
◼️四、爬虫框架scrapy设置代理:
◼️五、Python异步Aiohttp设置代理:
转https://www.cnblogs.com/du-jun/p/10710833.html
五种代理IP proxy的设置方法相关推荐
- 二十三种设计模式(第十二种)-----代理模式(Proxy)
二十三种设计模式(第十二种)-----代理模式(Proxy) 尚硅谷视频连接https://www.bilibili.com/video/BV1G4411c7N4?from=search&se ...
- windows2003服务器双线双IP双网卡设置方法 双线
windows2003服务器双线双IP双网卡设置方法 双线 双线双ip很好,网通用户访问网通线路,电信用户访问电信线路. 很多人会选用导入静态路由表,这个办法看似完美,其实问题很多. 1.电信用户如果 ...
- 计算机自动配置的ip地址,电脑自动获取IP地址的设置方法(图文)
在我们使用电脑的过程中,有时候需要根据网络的需求将电脑IP地址设置为自动获取,对网络知识不太了解的朋友遇到此类问题可能不知道怎么去设置,在此小编总结了有关电脑设置自动获取IP地址的相关方法,感兴趣的朋 ...
- css 背景效果_css透明度怎么设置?三种css图片透明度的设置方法
css透明度的设置在网页的设计中是经常需要用到的,有时为了设计出的网页更加的美观,会对图片进行透明化处理,这样网页上面的内容就不会看不见,有的网页因为图片作为背景,也会更加美观,那么,css中的透明度 ...
- php实现云盘下载不限速,【合集】【已更新第五种】五种百度云下载不限速方法+软件...
本帖最后由 kof20046 于 2019-3-17 17:46 编辑 目前本人知道的五种百度网盘不限速方法,给大家收集起来,方便查找下载. 还有IDM和FDM也是可以下载,但是我下载的时候总只有10 ...
- burpsuite 五种代理抓包方式(本地、谷歌、火狐浏览器两种插件)
目录 直接使用系统的代理功能 Google浏览器插件SwitchyOmega设置(只能装离线版) Firefox浏览器插件SwitchyOmega设置(可在线安装) 使用火狐浏览器+在线安装代理插件F ...
- html win10虚拟键盘,五种打开win10虚拟键盘的方法 win10虚拟键盘快捷键
电脑在使用的过程中,有时会遇到只有鼠标或实体键盘部分按键失灵,或为了体验系统自带的虚拟键盘等情况.此时就需要开启系统的屏幕键盘.屏幕键盘是一个模拟键盘的系统软件,必要的时候可以代替物理键盘Win10做 ...
- 将ip电话注册到服务器上,ip电话怎么安装设置 ip电话安装设置方法文字详解【图文】...
随着互联网时代的到来,我们的地球变成了一个"村庄",跨越了时间和空间的界限,可以不夸张的说,一个位于"天涯",另一个身在"海角"都能相互通话 ...
- virtualbox四种网络连接方式及其设置方法
VirtualBox中有4种网络连接方式: ①NAT ②Bridged Adapter ③Internal ④Host-only Adapte 废话不多说,直接上图! (注:此图直接取至Finalbu ...
- Java24种设计模式(第二种)--代理模式(Proxy Pattern)
Java24种设计模式 (第二种) 一.代理模式(Proxy Pattern) 模式逻辑: 什么是代理模式呢?我很忙,忙的没空理你,那你要找我呢就先找我的代理人吧,那代理人总要知道 被代理人能做哪些事 ...
最新文章
- “人工智能之父”艾伦·图灵登上英国50英镑新钞
- 智能车竞赛线上比赛部分镜头
- 提升 Node.js 应用性能的 5 个技巧
- PAT乙级(Basic Level)练习题-写出这个数 (20)
- 10 分钟快速入门海量数据搜索分析引擎 Elasticearch
- vue+express 构建后台管理系统
- oracle分区表学习及应用
- java创建android快捷方式_Android 通过应用程序创建快捷方式
- Android学习笔记——保存数据到SQL数据库中(Saving Data in SQL Databases)
- java servlet文件下载_Servlet实现文件下载功能
- 高效管理http连接
- 小文件复制为什么那么慢_为什么最近手机网速那么慢?原因是……
- Springboot启动报错Error handling failed
- Servlet+Jsp实现图片或文件的上传功能
- Android Contentprovider的学习实例总结
- 457.环形数组循环
- Windows 技术篇-通过注册表查找vc运行库所在位置实战演示,通过ProductCode查看vc++运行库安装位置
- wireshark+rtmp协议分析
- python自由落体_Javascript摸拟自由落体与上抛运动原理与实现方法详解
- 如何证明pi是无理数
热门文章
- 【数据结构】顺序存储结构
- 打开unity卡在loading白屏界面
- ios13 文件 连接服务器 您已离线,iOS13,终于可以屏蔽系统更新了
- Java中的char占用几个字节
- java将map输出到d盘_java后台的“/”相对路径不是代表webroot吗,为什么在这里代表了d盘,测试的文件都传到了d盘呀?...
- springboot的配置文件加载的顺序,以及在不同位置配置下,加载的顺序
- String类型相关的题
- tornado(五)
- 会玩弹珠也可以拿来炫了?是的,这个技能燃爆了!
- 查询ubuntu系统版本相关信息