AotucCrawler 快速爬取圖片
AotucCrawler 快速爬取圖片
今天介紹一款自動化爬取圖片項目。
GitHub: //github.com/YoongiKim/AutoCrawler
Google, Naver multiprocess image web crawler (Selenium)
關鍵字
- 爬蟲網站:Google、Naver (美、韓兩大搜索引擎)
- 運行方式:Multiprocess(多進程)
- 爬取格式:image (圖片)
- 基於自動化工具:Selenium (不解釋)
如何使用
-
Git克隆
AutoCrawler
項目到本地 -
自行安裝
Chrome
瀏覽器 -
安裝依賴
> pip -r requirements.txt
certifi
: 包含了很多可信任知名公司的證書/公鑰。chardet
:提供自動檢測字元編碼的功能。idna
: 提供”對於RFC5891中定義的IDNA協議(Internationalised Domain Names in Applications)的支援”。requests
: 依賴於上面三個基礎庫,他主要用於根據圖片鏈接下載圖片。selenium
: 用於啟動瀏覽器,爬取圖片鏈接。webdriver-manager
: 用來管理selenium瀏覽器驅動的項目。
仔細分析別人項目,不管是源碼還是依賴庫都會有收穫。
webdriver-manager
就是我發現的一個寶藏項目,它簡化的瀏覽器驅動的管理。
- 打開
keywords.txt
文件,編寫爬取的關鍵字。
cat
dog
- 運行
main.py
文件
> python main.py
參數說明:
--skip true
:如果下載的關鍵字已經存在,是否跳過關鍵字,重新下載時需要設置。
--threads 4
: 下載使用執行緒數量
--google true
: 從google.com
下載。
--naver true
: 從naver.com
下載。
--full false
: 下載全解析度影像而不是縮略圖 (慢)。
--face false
: Face search mode。
--no_gui auto
: 使用 GUI 模式. (headless模式) 全解析度模式可以加速, 但是縮略圖模式不穩定。 默認auto
模式,如果full=false
默認使用使用GUI,如果full=true
默認Headless模式。(可用於docker linux系統)。
--limit 0
: 設置最大圖片下載範圍。 (0: 無限制)
--proxy-list
: 逗號分隔的代理列表,如: socks://127.0.0.1:1080, //127.0.0.1:1081
,每個執行緒從列表中隨即選擇一個。
例如:
> python main.py --threads 2 --google true --naver false --full false --limit 50
- 爬取的圖片保存於
downloads/
目錄。
小結
-
因為使用的是Google網站,沒有梯子的同學有點鬱悶。項目本身並不複雜,兩個python文件加一起不到1000行程式碼,我們完全可以花點時間替換為中國可訪問的搜索引擎。
-
下載圖片只是為了欣賞貓貓狗狗嗎?當然不是,我們可用下載的圖片訓練 AI。