1. 程式人生 > 程式設計 >Python爬取YY評級分數並儲存資料實現過程解析

Python爬取YY評級分數並儲存資料實現過程解析

前言

當需要進行大規模查詢時(比如目前遇到的情形:查詢某個省所有發債企業的YY評級分數),人工查詢顯然太過費時,那就寫個爬蟲吧。

由於該爬蟲實在過於簡單,就只簡單概述下。

一、請求端

通過觀察YY評級的網頁資訊,如下圖(F12或右擊進入檢查,點選network—>XHR—>headers)。

紅色框表明是個get請求(其實這種網頁基本都是Ajax get,需要總結實際url的規律的)。

綠色框即為實際URL,通過分析該URL,其由兩部分組成。前半部分為“
https://web.ratingdog.cn/v1/search?”,後半部分為黃色框內內容用“&”符號連線後的結果。黃色框內的內容,只有企業名稱為變數,且為已知變數,那URL即可據此確定了。

Python爬取YY評級分數並儲存資料實現過程解析

另外需注意,YY評級需要登入才可查詢資料,在構建頭部資訊進行訪問時,一定要提前登入,並在頭部資訊中放入登入資訊和登入狀態。

二、響應端

通過觀察網頁的響應資訊(F12或右擊進入檢查,點選network—>XHR—>response),如下圖。響應資訊及其簡單,我們所需要的YY評級分數安詳地躺在那裡,簡單到一個正則表示式就可以提取出該資料。正則如下:

"msg".*?"IssuerName":"(.*?)","YYRating":"(.*?)/10","IntrinsicRating".*?"

Python爬取YY評級分數並儲存資料實現過程解析

三、程式碼

所需資料較少,程式碼相對簡單,就不建立函數了,直接一路到底吧。如下:

Python爬取YY評級分數並儲存資料實現過程解析

執行程式碼後,得到結果如下。安徽省的100多條資料,就到了本地了

Python爬取YY評級分數並儲存資料實現過程解析

Python爬取YY評級分數並儲存資料實現過程解析

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。