您的位置:首页 > 新闻资讯 >文章内容
代理IP设置使用的五个不同方法
来源:互联网 作者:admin 时间:2019-08-05 17:13:30

    由于同一个IP反复爬取同一个网页,就很可能被封,所以如果需要爬虫出面进行爬取,这需要使用代理IP的,但是怎么使用代理IP呢?这里介绍代理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()


代理IP设置使用的五个不同方法


    三、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)


代理IP设置使用的五个不同方法


    四、爬虫框架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)


    根据以上设置代理的方法,就可以爬取你想要的内容了。代理IP设置使用的五个不同方法,你都学会了么?有问题可以讨论下。


相关文章内容简介
推荐阅读
  • 17 2019-04
    用爬虫代理,为什么爬虫程序还被拒了?

    用爬虫代理,为什么爬虫程序还被拒了?关于这一点,大家是否有研究过呢?是的,即使我们使用了爬虫代理,还是有几率会遇上爬虫程序被封的情况,出现这种情况的原因很多,总结为四大类

  • 09 2019-03
    单线程没效率?多线程效果更佳,常用的几种线程池

    其实单线程远不能满足我们的需求,毕竟单线程的能力有限,不管怎么抓取,让其慢慢积累都是需要时间的,而我们需要的就是抢时间,以更短的时间获得信息。但是单线程的效率太慢了,还不

  • 17 2019-09
    动态IP代理时间套餐是什么?

    在我们对代理IP进行选购的时候会发现,会有很多的套餐方案给我们进行选择,不仅可以选择IP类型,匿名程度,还可以选择是按次数购买还是时间购买。那么按时间购买的动态IP是怎么一回事呢

  • 25 2019-03
    爬虫程序中调用动态ip代理的方法

    动态ip代理对于爬虫程序来说,是非常重要的组成部分,如果仅仅是编写爬虫程序,不做抓取使用,这没有加入动态ip代理也没有什么,但如果要让爬虫程序直接去爬取数据,这是不能够的。

  • 17 2019-12
    爬虫抓取为何需要IP代理​?

    爬虫抓取为何需要IP代理​?python爬虫是大数据中的基本,很多初学者通常会使用爬虫来当做练手的第一战,可是目前许多的网站都相应的做了不少反爬虫处理,让爬虫在刚开始就被封掉。这时候

  • 20 2019-09
    代理IP剖析Python发展方向

    Python语言的使用范围非常的广,而且一旦上手熟悉,可以让工作效率得到提升。而且现在代理IP的使用,让爬虫的门槛以及难度降低了,越来越多人学习Python。那么,Python适用于哪些方面呢?而之

在线咨询
大客户经理
大客户经理
1829380381
13316264505

大客户经理微信

微信公众号

微信公众号

回到顶部