You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

21 lines
595 B

class proxy_iter:
def __init__(self,proxies):
self._proxies = set(proxies)
self.proxies = self._proxies.copy()
self.bad_proxies = set()
# self.used_proxies = {}
def __next__(self):
self.proxies -= self.bad_proxies
if len(self.proxies) == 0:
raise StopIteration
elem = self.proxies.pop()
if len(self.proxies) == 0:
self.proxies = self._proxies.copy()
return elem
def __iter__(self):
return self
def blacklist(self,proxy):
self.bad_proxies.add(proxy)