最有可能的原因就是網頁數據是動態加載的,存儲在一個json文件中,直接獲取源碼是提取不到任何信息的,需要抓包分析才行,下面我簡單介紹一下操作過程,以某某貸上的數據為例(動態加載):
1.首先,打開原網頁,如下,這里假設我們要爬取的數據包含年利率、借款標題、期限、金額和進度5個字段:
2.接著右鍵打開網頁源碼,按Ctrl+F搜索其中關鍵字,如“10.20%”,可以看到,任何信息都匹配不到,說明數據是動態加載的,而非直接嵌套在網頁源碼中:
3.按F12調出瀏覽器開發者工具,開始抓包分析,依次點擊“Network”->“XHR”,F5刷新頁面,可以看到,數據是動態加載的,存儲在一個json文件中,而非html網頁源碼,只有解析這個json文件,才能提取出我們需要的數據:
4.接著就是根據抓包結果解析json文件,已經獲取到url地址,所以直接get請求即可,然后用python自帶的json包解析就行,測試代碼如下,非常簡單,依次根據屬性提取字段信息即可:
5.最后點擊運行程序,截圖如下,已經成功提取到我們需要的數據:
至此,我們就完成了網頁動態數據的爬取??偟膩碚f,整個過程非常簡單,最主要的還是抓包分析,獲取到真實存儲數據的文件,然后再解析就行,只要你有一定的python基礎,熟悉一下上面的過程,很快就能掌握的,當然,如果數據或鏈接進行了加密處理,這個就非常復雜了,需要自己好好琢磨一下,網上也有相關資料和教程,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言進行補充。