背景
前段時間給朋友寫了一個自動抓取同花順股票數據的程序,很多人以爲不錯。java
這幾天後臺有粉絲給我留言讓我也抓一下東方財富的數據,說東方財富的數據特別難抓,我還真不必定能搞得定。git
原本我是一個德藝雙磬且與世無爭的佛系程序員,小小的激將法怎麼會激到我,但在京隔離期間實在太閒,就看了下東方財富的網站。真是不看不知道,一看嚇一跳,這網站作的我口吐芬芳。程序員
抓取思路
咱們先看下這個網站的資金流向排行榜,裏面有各大股市的股票資金數據github
炒股(韭菜)的都知道,若是一個股票的淨流入大單不少,那說明股票漲,流入越大,漲的越多。因此關注一隻股票的資金流向很重要,而東方財富專門有個資金流向的板塊給咱們提供數據。因而抓取這個頁面的資金流向數據就很關鍵,根據頁面源碼和抓包分析,進入這個網站時,會分配一個token。而表格中的數據是異步加載的,獲取數據的請求中會帶着這個token,因此咱們第一步要搞定這個token。根據頁面中的表格咱們能夠看到這個頁面的數據進行了分頁,每頁50個,因此在抓取時須要根據分頁循環抓取數據,直至尾頁。spring
總結步驟:springboot
-
獲取token異步
-
分頁抓取網站
-
清洗數據blog
-
數據入庫token
數據入庫
給你們看看我最近爬下來的數據:
抓取的代碼我直接寫成了一個定時任務DFCFFundFlowCrawlerJob.java,你們能夠直接複製到任何springboot工程中,直接運行就行,太長了,這裏就不展現了。
github地址:https://github.com/chinashuai/crawler-stock-data-all