-1

我有一个比方说 100 个 URL 的列表。我想在每 10 个 URL 之后更改 IP。

假设我有自己的代理,我想在每 10 个 URL 之后使用它们。我将如何在我的请求中使用该代理 - ?

list = [100URLS items]
proxies ['ip:port','ip:port']
for urls in list:
   try:
       ##request 10 URLS here then it might throw me error. 
   except:
       #After it throws me error, I want to be able to use proxies inside a list something like this and reiterate the same request with a new proxy using requests. 
4

1 回答 1

2
#!/usr/bin/python

import requests

class Proxer:
    proxy = ''
    list = ['http://proxy1','http://proxy2', 'http://pox']
    proxy_count = 0
    page_count = 0

    def proxy_changer(self):
        try:
            if self.proxy_count > 0:
                self.proxy_count = self.proxy_count + 1
            self.proxy = self.list[self.proxy_count]
            return self.proxy
        except:
            print "you are out of proxies"


    def open_site(self, url):
        self.page_count = self.page_count + 1
        try:
            if self.page_count%10:
                self.proxy_changer()
        except:
            pass
        requests.get(url, {'http':self.proxy})


Proxer().open_site('http://google.com')

这是完整的代码。应该在使用 10 页后更改代理一旦您用完代理,将返回异常。open_site('http://google.com')

于 2016-10-29T05:16:55.090 回答