爬蟲怎麼根據一個關鍵詞爬取上千張網路圖片
本文的亮點是可以儲存通過關鍵詞搜尋到的所有圖片,而不只是第一頁的圖片。
由於公司做訓練需要蒐集一些圖片,所以就開始打算用爬蟲自動下載。剛開始是使用
【圖文詳解】python爬蟲實戰——5分鐘做個圖片自動下載器 - 簡書
中的程式進行下載。但是感覺不是太好用,每一個關鍵詞最多隻能儲存60張圖片。而我們需要蒐集幾萬張圖片,根本不能滿足要求。
程式碼如下:
#-*- coding:utf-8 -*- import re import requests def dowmloadPic(html,keyword,startNum): pic_url = re.findall('"objURL":"(.*?)",',html,re.S) num = len(pic_url) i = startNum print('找到關鍵詞:'+keyword+'的圖片%d 張,現在開始下載圖片...' % num) for each in pic_url: print('正在下載第'+str(i+1)+'張圖片,圖片地址:'+str(each)) try: pic= requests.get(each, timeout=10) string = 'pictures1/'+keyword+'_'+str(i) + '.jpg' #resolve the problem of encode, make sure that chinese name could be store fp = open(string,'wb') fp.write(pic.content) fp.close() # except requests.exceptions.ConnectionError: except: print ('【錯誤】當前圖片無法下載') continue i += 1 return i if __name__ == '__main__': lastNum = 0 words = ['胖人墨鏡','墨鏡手錶美女','帶墨鏡帥哥','墨鏡中年帥哥','墨鏡帥哥畫','墨鏡小帥哥','海邊墨鏡帥哥','墨鏡帥哥桌布','90後墨鏡帥哥'] #words為一個列表,可以自動儲存多個關鍵字的圖片 for word in words: # word = input("Input key word: ") if word.strip() == "exit": break #關鍵就在這裡,我發現將百度圖片選擇傳統版本(預設是瀑布流版本,只有滑動滑動條,才會看到更多圖片。傳統版本,就是分頁顯示,底部可以選擇頁數)後,圖片網址跟頁數有一個關係,因此利用該關係就可以自動獲取好多頁的網址,進行儲存圖片。 pageId = 0 #這裡我儲存到第50頁 for i in range(50): url = 'http://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word=' + word + "&pn="+str(pageId)+"&gsm=?&ct=&ic=0&lm=-1&width=0&height=0" pageId += 20 #url = 'https://image.baidu.com/search/index?tn=baiduimage&ie=utf-8&word=%E5%A2%A8%E9%95%9C%E7%94%B7%E4%BA%BA&ct=201326592&ic=0&lm=-1&width=&height=&v=index' result = requests.get(url) lastNum = dowmloadPic(result.text, 'sunglasses', lastNum)
相關文章
- 堆糖網爬蟲(根據關鍵字下載圖片)爬蟲
- selenium 知網爬蟲之根據【關鍵詞】獲取文獻資訊爬蟲
- 網路爬蟲---從千圖網爬取圖片到本地爬蟲
- node:爬蟲爬取網頁圖片爬蟲網頁
- Java爬蟲批量爬取圖片Java爬蟲
- Python爬蟲—爬取某網站圖片Python爬蟲網站
- python爬蟲---網頁爬蟲,圖片爬蟲,文章爬蟲,Python爬蟲爬取新聞網站新聞Python爬蟲網頁網站
- 最簡單的網路圖片的爬取 --Pyhon網路爬蟲與資訊獲取爬蟲
- 爬蟲---xpath解析(爬取美女圖片)爬蟲
- Python網路爬蟲2 - 爬取新浪微博使用者圖片Python爬蟲
- 爬蟲 Scrapy框架 爬取圖蟲圖片並下載爬蟲框架
- 蘇寧易購網址爬蟲爬取商品資訊及圖片爬蟲
- 網路爬蟲——爬蟲實戰(一)爬蟲
- 【python--爬蟲】千圖網高清背景圖片爬蟲Python爬蟲
- 精通Scrapy網路爬蟲【一】第一個爬蟲專案爬蟲
- 簡單的爬蟲:爬取網站內容正文與圖片爬蟲網站
- Python爬蟲入門【5】:27270圖片爬取Python爬蟲
- Python爬蟲學習(6): 爬取MM圖片Python爬蟲
- 《用Python寫網路爬蟲》--編寫第一個網路爬蟲Python爬蟲
- 爬蟲學習之一個簡單的網路爬蟲爬蟲
- 網路爬蟲怎麼使用ip代理爬蟲
- 一個事件驅動的圖片爬蟲事件爬蟲
- Python爬蟲入門【4】:美空網未登入圖片爬取Python爬蟲
- Python3 大型網路爬蟲實戰 003 — scrapy 大型靜態圖片網站爬蟲專案實戰 — 實戰:爬取 169美女圖片網 高清圖片Python爬蟲網站
- Python爬蟲新手教程: 知乎文章圖片爬取器Python爬蟲
- Python爬蟲實戰詳解:爬取圖片之家Python爬蟲
- Python爬蟲入門-爬取pexels高清圖片Python爬蟲
- 小小圖片爬蟲爬蟲
- python網路爬蟲--爬取淘寶聯盟Python爬蟲
- 教你如何快速實現一個圖片爬蟲爬蟲
- 新手爬蟲教程:Python爬取知乎文章中的圖片爬蟲Python
- Python爬蟲遞迴呼叫爬取動漫美女圖片Python爬蟲遞迴
- Python 爬蟲入門 (二) 使用Requests來爬取圖片Python爬蟲
- 如何自己寫一個網路爬蟲爬蟲
- 圖片爬取實戰一
- 爬蟲實現:根據IP地址反查域名爬蟲
- 用PYTHON爬蟲簡單爬取網路小說Python爬蟲
- 網路爬蟲——爬取糗事百科笑料段子爬蟲