今天我們講的,就是利用 web scraper 里的 Element click 模擬點擊「加載更多」,去加載更多的數據。
這次的練習網站,我們拿少數派網站的熱門文章作為我們的練習對象,對應的網址鏈接是:
為了復習上一個小節的內容,這次我們模擬點擊翻頁的同時,還要抓取多條內容,包括作者、標題、點贊數和評論數。
下面開始我們的數據采集之路。
2019-12-22 補充:
少數派官網改版,和我當初寫教程的時抓取的網站有些許不同,主要改動有以下幾點:
- 「加載更多」按鈕改為「更多」按鈕,而且在網頁全屏的情況下改為下拉自動加載,網頁寬度半屏的情況下為點擊「更多」按鈕翻頁,建議大家在半屏的情況下練習
- 只能抓取作者、標題和點贊數這 3 個數據,無法抓取評論數
- 網頁 UI 樣式有些許改動,但邏輯都是相通的,不影響教程學習和數據抓取
1.創建 sitmap
老規矩,第一步我們先創建一個少數派的 sitmap,取名為 sspai_m,起始鏈接為https://sspai.com/matrix
2.創建容器的 selector
通過上一節的內容,我們知道想在 web scraper 里想抓取多種類型的數據,必須先創建一個容器(container),這個容器包含多種類型的數據,所以我們第二步就是要創建容器的 selector。
要注意的是,這個 selector 的 Type 類型選為 Element click,翻譯成中文就是模擬點擊元素,意如其名,我們可以利用這種類型模擬點擊「加載更多」按鈕。
這種類型的 selector,會多出幾個選項,第一個就是 Click selector,這個就是選擇「加載更多」按鈕的,具體操作可見下圖的動圖。
還有幾個多出來的選項,我們一一解釋一下: