python爬蟲爬取股票的k線圖
前言
之前已經(jīng)講述了一些關于;python
;獲取基金的一些信息,最近又有了一些新發(fā)現(xiàn),和大家分享一下,這個是非常重要的內(nèi)容,非常重要的內(nèi)容。這個數(shù)據(jù)也是非常的敏感,在一些搞量化交易的平臺上,這些數(shù)據(jù)都是要收費的,而且數(shù)據(jù)的質(zhì)量也不能保障。這個內(nèi)容就是如何獲取股票交易的 k 線數(shù)據(jù)。
數(shù)據(jù)來源分析
我是非常欣賞東方某富的,因為同為券商,和別的公司確實不大一樣,有這互聯(lián)網(wǎng)的基因,可以這樣說,是因為它的出現(xiàn)改變了一些行業(yè)的規(guī)則。話不多說,這里以海爾智家為例,抓取一下股票的 k 線數(shù)據(jù)。
# 頁面數(shù)據(jù)連接 http://quote.eastmoney.com/sh600690.html
我們需要獲取如下圖所示的紅色和綠色柱子的數(shù)據(jù),網(wǎng)頁上顯示的是 svg
的圖片,沒有辦法獲取數(shù)據(jù),但是我發(fā)現(xiàn)有些數(shù)據(jù)是通過接口訪問后臺的,在切換 k 線展示的時候,我偶然間發(fā)現(xiàn)了這個接口,通過這個接口就可以獲取 k 線數(shù)據(jù)。
一定是在切換 日 k 周 k 月 k 的時候會訪問后臺接口,如下圖所示,就是返回前臺的數(shù)據(jù),這里我吐槽一下,前端好像請求了后臺兩次,因為我看到了兩個請求,而且返回的數(shù)據(jù)是一樣的。
展示一下訪問后臺接口的參數(shù):
這里去掉了一些無關緊要的參數(shù),其結(jié)果如下:
http://54.push2his.eastmoney.com/api/qt/stock/kline/get?
# 這里傳入需要查詢的股票代碼,需要加上前綴上海市場是 1,深圳市場為 0
secid=1.600690
# 這里類似于 token ,需要傳入,不過好像是固定的,每個股票都是一樣的
&ut=fa5fd1943c7b386f172d6893dbfba10b
# fields1 和 fields2 類似于查詢參數(shù),
# fields1 不曉得是什么意思
&fields1=f1,f2,f3,f4,f5,f6
# fields2 為 日期 開盤價 收盤價 最高價 漲跌幅 價格之類的,別問我怎么知道的,我是一個個試出來的
&fields2=f51,f52,f53,f54,f55,f56,f57,f58,f59,f60,f61
# 這個參數(shù)是 k 線的類型 101 為日線 102 為周線以此類推,不能說太多,大家可以去試試就知道全部了
&klt=102
# 是否復權(quán) 0不復權(quán) 1 前復權(quán) 2 后復權(quán)
&fqt=1
# 查詢數(shù)據(jù)的開始時間和結(jié)束時間,格式為yyyymmdd,結(jié)束時間默認為2050年
&beg=0
&end=20500101
# 這個不知道是什么意思
&smplmt=460
# 查詢的最大條數(shù)
&lmt=1000000
這里再次吐槽一下接口參數(shù)的命名,帶著明顯的中文字母標簽。
數(shù)據(jù)抓取
在之前我們已經(jīng)分析了數(shù)據(jù)的接口,可以開始上代碼了,依舊使用 requests
來抓取數(shù)據(jù)然后再打印其結(jié)果:
第一步要組裝請求據(jù)參數(shù),拼裝參數(shù) url。
第二步使用 requests 請求參數(shù),解析參數(shù)返回結(jié)果,進行輸出
最后打印的結(jié)果如下圖所示,這里我采用的是周線數(shù)據(jù),所以截止到今天位置,剛好是四個周,一共四行數(shù)據(jù)。
總結(jié)
爬取股票的 k 線數(shù)據(jù)示例已經(jīng)給出,個人覺得是非常有價值的,特別是對于做量化的來說,實在是有用的很,這里只是做學習交流來用,如果引發(fā)了官方的注意,修改了接口那可能就用不了了,建議官方不要使用中文拼音前綴了。
到此這篇關于python爬蟲爬取股票的k線圖的文章就介紹到這了,更多相關python爬取k線圖內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
簡單了解python gevent 協(xié)程使用及作用
這篇文章主要介紹了簡單了解python gevent 協(xié)程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-07-07Python?UnicodedecodeError編碼問題解決方法匯總
本文主要介紹了Python?UnicodedecodeError編碼問題解決方法匯總,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-08-08我們?yōu)槭裁匆獪p少Python中循環(huán)的使用
這篇文章主要介紹了我們?yōu)槭裁匆獪p少Python中循環(huán)的使用,我將闡述 Python 提供的一些簡單但是非常有用的結(jié)構(gòu),一些小技巧以及一些我在數(shù)據(jù)科學工作中遇到的案例。我將討論 Python 中的 for 循環(huán),以及如何盡量避免使用它們,需要的朋友可以參考下2019-07-07Linux 下 Python 實現(xiàn)按任意鍵退出的實現(xiàn)方法
這篇文章主要介紹了Linux 下 Python 實現(xiàn)按任意鍵退出的實現(xiàn)方法的相關資料,本文介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下2016-09-09