学习python少不了写爬虫,不仅能以点带面地学习、练习使用python,爬虫本身也是有用且有趣的,大量重复性的下载、统计工作完全可以写一个爬虫程序完成。
用python写爬虫需要python的基础知识、涉及网络的几个模块、正则表达式、文件操作等知识。昨天在网上学习了一下,写了一个爬虫自动下载「糗事百科」里面的图片。源代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
import urllib2 import urllib import re
pat = re.compile('<div class="thumb">\\n<img src=\"(ht.*?)\".*?>')
nexturl1 = "http://m.qiushibaike.com/imgrank/page/" nexturl2 = "?s=4582487&slow"
count = 1
while count < 3:
print "Page " + str(count) + "\n" myurl = nexturl1 + str(count) + nexturl2 myres = urllib2.urlopen(myurl) mypage = myres.read() ucpage = mypage.decode("utf-8")
mat = pat.findall(ucpage) count += 1; if len(mat): for item in mat: print "url: " + item + "\n" fnp = re.compile('/(\w+\.\w+)$') fnr = fnp.findall(item) fname = fnr[0] urllib.urlretrieve(item, fname) else: print "no data"
|
使用方法:新建一个practice文件夹,将源代码保存为qb.py
文件,并放在practice文件夹中,在命令行里执行python qb.py
,即开始下载图片。可以修改源代码里面的while语句设置下载的页数。
资料推荐:http://blog.csdn.net/wxg694175346/article/category/1418998