





















这篇文章主要内容是对西刺网站上的免费IP进行爬取和验证,来保证对其他项目的需求。
通过查看元素,ip地址、端口、类型都可以在一个tr里找到。
def get_info(self, q): page = 1 while True: url = 'http://www.xicidaili.com/nn/%d' % (page) req = requests.get(url, headers=self.header) soup = BeautifulSoup(req.text, 'lxml') trs = soup.find('table', id='ip_list').find_all('tr') for tr in trs[1:]: ip = tr.contents[3].text port = tr.contents[5].text procotol = tr.contents[11].text q.put((ip, port, procotol.lower())) page += 1
def check(self, q, lock): while True: data = q.get() try: req = requests.get('http://www.baidu.com', proxies={'%s' % (data[2]): '%s://%s:%s' % (data[2], data[0], data[1])}, timeout=2, headers=self.header, cookies=self.cookie) if req.status_code == 200: print(data) tools.i_ip(data) else: print('not200', data) except Exception as e: print(e, 'erro', data) pass
GitHub开源地址:https://github.com/matianhe/crawler
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。