Github上有一個關於下載百度貼吧裏的美女圖片的練習題,最近正好在學爬蟲相關的知識,拿來練練手。
這是個人目標網頁。
最開始的時候我在網上找到一個相似的案例,代碼以下圖:
稍做修改,運行以後獲得七十多張圖片,結果一看接近一半是用戶頭像~
方法太過簡單粗暴,決定使用美麗的湯——BeautifulSoup重寫一下(這湯真香)
觀察了一下頁面的源代碼,發現全部用戶發的圖片都是class=「BDE_Image」
的,這樣就能夠區分頭像和帖子裏的圖片了,隨便寫寫的代碼:html
from urllib.request import urlretrieve from urllib.request import urlopen from bs4 import BeautifulSoup def get_image(url): html = urlopen(url).read().decode('utf-8') bsObj = BeautifulSoup(html, "lxml") myimg = bsObj.find_all('img', class_='BDE_Image') num = 1 for img in myimg: link = img.get('src') pic_name = str(num) + '.jpg' urlretrieve(link, pic_name) print("Success!" + pic_name) num += 1 return None url = 'http://tieba.baidu.com/p/2166231880' get_image(url)
此次獲得了49張圖片python
代碼上傳到了個人Githubgit
交流羣:435414286github