Python网页爬虫在实际的使用中需要我们注意很多的地方,其实有的东西大家看着难但是在实际操作起来的话都很简单。下面我们就来学习下如何自己动手编写一个Python网页爬虫。
这个程序因为主页面链接到的页面都在同一个目录下,结构很简单,只有一层。因此写了一些硬编码做链接地址的分析。
代码如下:
- #!/usr/bin/env python
- # -*- coding: GBK -*-
- import urllib
- from sgmllib import SGMLParser
- class URLLister(SGMLParser):
- def reset(self):
- SGMLParser.reset(self)
- self.urls = []
- def start_a(self, attrs):
- href = [v for k, v in attrs if k == 'href']
- if href:
- self.urls.extend(href)
- url = r'http://www.sinc.sunysb.edu/Clubs/buddhism/JinGangJi
ngShuoShenMo/'- sock = urllib.urlopen(url)
- htmlSource = sock.read()
- sock.close()
- #print htmlSource
- f = file('jingangjing.html', 'w')
- f.write(htmlSource)
- f.close()
- mypath = r'http://www.sinc.sunysb.edu/Clubs/buddhism/JinGan
gJingShuoShenMo/'- parser = URLLister()
- parser.feed(htmlSource)
- for url in parser.urls:
- myurl = mypath + url
- print "get: " + myurl
- sock2 = urllib.urlopen(myurl)
- html2 = sock2.read()
- sock2.close()
- # 保存到文件
- print "save as: " + url
- f2 = file(url, 'w')
- f2.write(html2)
- f2.close()
以上就是对Python网页爬虫在编写过程中的详细介绍。
【编辑推荐】