Web Scraper用途
日常學習工作中,我們多多少少都會遇到一些臨時的數(shù)據(jù)爬取需求,比如說運營活動時收集用戶評價,競品分析時收集友商數(shù)據(jù)。
當我們著手準備收集數(shù)據(jù)時,面對低效的復制黏貼工作,一般都會萌生一個想法:我要是會爬蟲就好了,分分鐘就把數(shù)據(jù)爬取下來了。可是當我們搜索相關教程時,往往會被并不簡單的學習教程所勸退。但是今天我要推薦的是 Web Scraper,一個輕量的數(shù)據(jù)爬蟲工具。
Web Scraper 的優(yōu)點就是對新手友好,在最初抓取數(shù)據(jù)時,把底層的編程知識和網(wǎng)頁知識都屏蔽了,可以非??斓娜腴T,只要熟悉基本操作,一小時內(nèi)就能掌握使用方法,幾分鐘就可以制作一些日常的爬蟲。
安裝方法及更多介紹
案例----爬取taptap熱門榜
1.創(chuàng)建爬蟲任務
安裝完web scraper后,我們先打開谷歌瀏覽器,訪問網(wǎng)址https://www.taptap.com/top/download。
按下F12,點選Web Scraper,下拉Create new sitemap并點擊Create Sitemap
設置名稱和爬取網(wǎng)址
2.制作數(shù)據(jù)框的集合
我們查看taptap熱門榜,發(fā)現(xiàn)該網(wǎng)站形式類似刷微博,當把內(nèi)容拉到屏幕末尾的時候,APP 就會自動加載下一頁的數(shù)據(jù),從體驗上來看,數(shù)據(jù)會源源不斷的加載出來,永遠沒有盡頭。經(jīng)查看,taptap熱門榜是展示150條。
點擊Add new selector。
接下來我們通過Select按鈕多選,包裹要爬取得所有數(shù)據(jù)框,每一個數(shù)據(jù)框應該對應csv的一條數(shù)據(jù)。
保證點選Selector里的Element preview按鈕實現(xiàn)這樣的效果。
3.數(shù)據(jù)框里的字段選擇
這邊我們選擇序號,名稱,分值,圖片地址4個字段進行爬取
[圖片上傳失敗...(image-636c70-1625305160878)]
通過以上截圖,可以發(fā)現(xiàn)2個關鍵點:
1.Parent Selectors 選擇我們剛做好的container
2.不用點選Multiple
4.執(zhí)行爬蟲任務并獲取數(shù)據(jù)
點擊Scrape按鈕,即可執(zhí)行爬取任務,待爬取完畢。
點擊Browse按鈕,查看剛爬取的數(shù)據(jù)。
點擊Export Sitemap按鈕,獲取制作好的腳本代碼,可復制給別的小伙伴用。
神秘代碼:
{"_id":"taptap","startUrl":["https://www.taptap.com/top/download"],"selectors":[{"id":"hot_index","type":"SelectorText","parentSelectors":["container"],"selector":"div.game-card__index","multiple":false,"regex":"","delay":0},{"id":"name","type":"SelectorText","parentSelectors":["container"],"selector":"p.tap-app-title__name","multiple":false,"regex":"","delay":0},{"id":"score","type":"SelectorText","parentSelectors":["container"],"selector":"div.app-rating__number","multiple":false,"regex":"","delay":0},{"id":"container","type":"SelectorElementScroll","parentSelectors":["_root"],"selector":"div.game-card","multiple":true,"delay":2000},{"id":"image","type":"SelectorImage","parentSelectors":["container"],"selector":".app-icon img[src]","multiple":false,"delay":0}]}
點擊Export data as CSV按鈕,點擊Download now!即可下載數(shù)據(jù)至csv。
Web Scraper 的優(yōu)點
輕量:非常的輕量。上手只需要一個 Chrome 瀏覽器和一個 Web Scraper 插件。對于一些限制安裝第三方軟件的公司電腦,可以很輕易的突破這層限制
提效:Web Scraper 支持絕大多數(shù)的網(wǎng)頁的爬取,可以無侵入的加入你的日常工作流中
快:抓取速度取決于你的網(wǎng)速與瀏覽器加載速度,其他的數(shù)據(jù)采集軟件可能有限速現(xiàn)象(充錢就能不限速)
Web Scraper 的缺點
只支持文本數(shù)據(jù)抓取:圖片短視頻等多媒體數(shù)據(jù)無法批量抓取
不支持范圍抓取:例如一個網(wǎng)頁有 1000 條數(shù)據(jù),默認是全量抓取的,無法配置抓取范圍。想停止抓取,只能斷網(wǎng)模擬數(shù)據(jù)加載完畢的情況
不支持復雜網(wǎng)頁抓取:對于那些加了復雜交互、酷炫的特效和反人類的反爬蟲網(wǎng)頁,Web Scraper 無能為力(其實這種網(wǎng)頁寫 python 爬蟲也挺頭疼)
導出數(shù)據(jù)亂序:想讓數(shù)據(jù)正序就得用 Excel 或者用 CouchDB,相對復雜了一些