python爬蟲學習基礎教程,批量抓取美女圖片!

python的抓取功能其實是非常強大的,當然不能浪費,呵呵。下面就與大家分享一個python寫的美女圖自動抓取程序吧!
在這裏插入圖片描述

其中用到urllib2模塊和正則表達式模塊。下面直接上代碼:

 1 用python批量抓取美女圖片
 2  
 3 #!/usr/bin/env python
 4 #-*- coding: utf-8 -*-
 5 #通過urllib(2)模塊下載網絡內容
 6 import urllib,urllib2,gevent
 7 #引入正則表達式模塊,時間模塊
 8 import re,time
 9 from gevent import monkey
10  
11 '''
12 在學習過程中有什麼不懂得可以加我的python學習交流扣扣qun,688244217,羣裏有不錯的學習教程、開發工具與電子書籍。
13 與你分享python企業當下人才需求及怎麼從零基礎學習好python,和學習什麼內容。
14 '''
15 monkey.patch_all()
16  
17 def geturllist(url):
18     url_list=[]
19     print url       
20     s = urllib2.urlopen(url)
21     text = s.read()
22     #正則匹配,匹配其中的圖片
23     html = re.search(r'<ol.*</ol>', text, re.S)
24     urls = re.finditer(r'<p><img src="(.+?)jpg" /></p>',html.group(),re.I)
25     for i in urls:
26         url=i.group(1).strip()+str("jpg")
27         url_list.append(url)
28     return url_list
29  
30 def download(down_url):
31     name=str(time.time())[:-3]+"_"+re.sub('.+?/','',down_url)
32     print name
33     urllib.urlretrieve(down_url, "D:\\TEMP\\"+name)
34  
35 def getpageurl():
36     page_list = []
37     #進行列表頁循環
38     for page in range(1,700):
39         url="http://jandan.net/ooxx/page-"+str(page)+"#comments"
40         #把生成的url加入到page_list中
41         page_list.append(url)
42     print page_list
43     return page_list
44 if __name__ == '__main__':
45     jobs = []
46     pageurl = getpageurl()[::-1]
47     #進行圖片下載
48     for i in pageurl:
49         for (downurl) in geturllist(i):
50             jobs.append(gevent.spawn(download, downurl))
51     gevent.joinall(jobs)

程序不長才45行,不是太難,大家可以研究下,這裏我只是拋磚引玉,大家可以根據原理開發出其他的抓取程序,呵呵,自己想去吧。。

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章