新手小白的爬蟲神器-無程式碼高效爬取資料

Huny發表於2021-01-01

前言

2020年即將過去,回望過去一年是魔幻的一年,今年註定是不平常的一年,我想也是會載入史冊,讓人類永遠銘記今年的重大事件。
全球疫情、中美貿易戰、美國大選等一系列重大事件。今年也許是最好的時代同時也是最壞的時代,機遇和危機都是轉瞬即逝,我們能做的只有把握當下,未雨綢繆,厚積薄發!

今天畢竟是2020年結束,2021年開始的第一天,不免有所感慨和總結。下面迴歸到技術部落格。。。
年底是跳槽的好時機,最近檢視招聘網的各個職位,想要將其爬取下來進行分析。剛開始寫過程式碼進行爬取,奈何本人技術有限,對付高階的反爬蟲系統顯得心有餘而力不足。
於是經過一段時間的查詢發現了這個神器:web scraper ,並且它是開源免費的,雖然使用上有些小問題,但是基本滿足我的需求。

安裝

官網:https://www.webscraper.io/
它是一個谷歌外掛,當然也支援火狐,其他的瀏覽器我就不清楚了。至於外掛安裝大家可以自己百度,有很多教程。

使用

安裝好之後在瀏覽器的F12或者開發者工具裡有一個Web Scraper整合的功能

  1. 建立網站地圖
    點選Create new sistemap

  2. 填寫資訊
    Sitemap name :名稱(可以隨便寫,自己知道意思就行)
    URL: 爬取地址(填你要爬取的網站地址,我這裡爬取的是51job,在此宣告:此資料僅做個人找工作學習參考,無其他任何商用途徑,也希望大家不要用做商用等違法途徑。)
    下面的地址能爬取第一頁得資料
    https://search.51job.com/list/040000,000000,0000,00,9,99,python,2,1.html?lang=c&postchannel=0000&workyear=02&cotype=99&degreefrom=03&jobterm=99&companysize=99&ord_field=0&dibiaoid=0&line=&welfare=
    如果我們想要爬取後面多個頁面呢,通過分析每一頁的URL地址只是中間的數字進行累加,於是使用正規表示式進行匹配[1-8],連結如下:
    https://search.51job.com/list/040000,000000,0000,00,9,99,python,2,[1-8].html?lang=c&postchannel=0000&workyear=02&cotype=99&degreefrom=03&jobterm=99&companysize=99&ord_field=0&dibiaoid=0&line=&welfare=

  1. 新增子節點
    點選新增子節點

  2. 配置子節點
    id:可以隨便填,最好見文知意
    type:選Text,因為我們是直接獲取文字,如果需要獲取連結則選link
    點選select可以選擇網頁上的元素,選擇2個會自動往下匹配相同的
    抓取多個資料一定要勾選Multiple
    然後選擇_root做為父節點



一個簡單的爬蟲配置就完成了,下面開始爬取資料
5. 檢查
點選Data preview出現你需要獲取得資料內容,那麼說明配置正確


6. 爬取
點選Scrape,然後點選開始執行

  1. 檢視結果
    點選Browse然後點選Refresh Data就可以檢視下面抓取到得資料了

  2. 匯出資料
    點選Export data as CSV然後儲存到你選擇的目錄

    開啟csv檢查

    至此資料爬取完成。

相關文章