程序员人生 网站导航

Python第一个程序小爬虫

栏目:php教程时间:2015-06-16 08:41:31

最近想上手Python。快速入门1门语言的方法就是写个小Demo。Python Demo必须是爬虫了。第1个小爬虫程序有些简陋,高手勿喷。

关于爬虫主要分为3个部份:根据队列中的URL爬取界面、获得内容、保存结果。

程序是以百度网站大全为种子URL,抓取页面中URL顺次放入队列中,爬虫从URL队列顺次获得新URL继续向外爬取。

# -*- coding: utf⑻ -*- import urllib2 import re import thread import time class HTML_Spider: def __init__(self): self.url = [] #根据队列中的URL爬取界面 def GetPage(self,url): try: myResponce = urllib2.urlopen(url) myPage = myResponce.read() myUrl = re.findall('href="(.*?)"',myPage,re.S) self.url.extend(myUrl); except: print u'当前URL不合法' myPage = ' ' return myPage #以HTML的情势保存界面 def SavePage(self,page): if page != ' ': #以时间戳的情势为文件命名 f = open(time.strftime(str(time.time()),time.localtime(time.time()))+'.html','w+')#解决pagenama问题,最好采取保存时间命名 f.write(page) f.close() #保持URL队列 def StartSpider(self): i = 1 while 1: if i == 1: url = u'http://site.baidu.com/' else: url = self.url[i] i += 1 print url page = self.GetPage(url) self.SavePage(page) #程序main函数 print u'开始爬取页面:' raw_input(" ") mySpider = HTML_Spider() mySpider.StartSpider()
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐