python爬蟲_入門,python爬蟲入門

來源:互聯網
上載者:User

python爬蟲_入門,python爬蟲入門

本來覺得沒什麼可寫的,因為網上這玩意一搜一大把,不過爬蟲畢竟是python的一個大亮點,不說說感覺對不起這玩意
基礎點來說,python2寫爬蟲重點需要兩個模組,urllib和urllib2,其實還有re
先介紹下模組的一些常用功能
urllib.urlopen('http://xxx.xxx.xxx') #開啟一個網址,只是開啟,和open差不多
urllib2.Request(url) #解析網址,這個可以省略,具體不是很懂,一些功能,比如加head頭什麼的也需要使用這個
urllib.urlretrieve(url,filename) #下載用,把url提供的東西down下來,並用filename儲存
舉個蜂鳥爬圖片的例子,下面上虛擬碼:

1、url解析2、開啟url3、讀取url,就是read()4、使用re.findall找到所有和圖片有關係的地址,這裡只jpg5、迴圈下載

看圖上,圖片連結格式是src="http://index_url/page_num/image_name.jpg?XXXXXXX",那麼如果需要下載的話一定是需要紅圈部分,也就是http://index_url/page_num/image_name.jpg
分析之後後面的事就好辦了,下面上代碼

import urllibimport urllib2import re#處理地址,並擷取頁面全部的圖片地址def get_image_url(url):  #url_format = urllib2.Request(url) #1  url_open = urllib.urlopen(url) #2  url_read = url_open.read() #3  re_value = re.compile('(?<=src\=\").*?\.jpg')  image_url_list = re.findall(re_value,url_read) #4  return image_url_list#這個函數專門用來下載,前面兩行是將圖片串連中/前面的內容全部刪除,留下後面的檔案名稱用來儲存檔案的,try不說了,不清楚請翻回去看容錯def down_image(image_url):  rev = '^.*/'  file_name = re.sub(rev,'',image_url)  try:    urllib.urlretrieve(image_url,file_name)  except:    print 'download %s fail' %image_url  else:    print 'download %s successed' %image_urlif __name__ == '__main__':  url = 'http://bbs.fengniao.com/forum/10384633.html'  image_url_list = get_image_url(url)  for image_url in image_url_list:    down_image(image_url) #5

困死,睡覺去。。。。。有時間再說說翻頁什麼的,就能耙梳站了

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.