这篇文章给大家分享的是有关python爬虫中ip代理池如何使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
说明
1、利用for循环爬取所有代理IP。查看网页源代码,发现所有的IP和端口都在第二和第三个td下,结合BeautifulSoup可以方便地抓取信息。
2、检查IP的可用程度。IP是否可用,取决于连接代理后2秒内是否可以打开页面。
如果可以,认为IP是可用的,添加到list中备用。
实例
import urllib2 from bs4 import BeautifulSoup import csv def IPspider(numpage): csvfile = file('ips.csv', 'wb') writer = csv.writer(csvfile) url='http://www.xicidaili.com/nn/' user_agent='IP' headers={'User-agent':user_agent} for num in xrange(1,numpage+1): ipurl=url+str(num) print 'Now downloading the '+str(num*100)+' ips' request=urllib2.Request(ipurl,headers=headers) content=urllib2.urlopen(request).read() bs=BeautifulSoup(content,'html.parser') res=bs.find_all('tr') for item in res: try: temp=[] tds=item.find_all('td') temp.append(tds[1].text.encode('utf-8')) temp.append(tds[2].text.encode('utf-8')) writer.writerow(temp) except IndexError: pass #假设爬取前十页所有的IP和端口 IPspider(10)
感谢各位的阅读!关于“python爬虫中ip代理池如何使用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。