本文包括安裝以及調(diào)用Tushare包的詳細流程操作
一、Tushare簡介
Tushare是Python中一個十分好用的免費調(diào)用股票數(shù)據(jù)的接口包。運用tushare可以很輕松的調(diào)取各種股票數(shù)據(jù)。
網(wǎng)址:https://tushare.pro/register?reg=427001
可以調(diào)取的數(shù)據(jù)包括但不僅限于:
二、安裝tushare
Windows系統(tǒng)直接在terminal輸入以下代碼
Mac在terminal輸入
需要注意的是,從tushare上獲取的數(shù)據(jù)類型為Dataframe,所以為了調(diào)用和存儲數(shù)據(jù)同樣需要安裝pandas包,安裝方法同上。
三、調(diào)用tushare
為了使用tushare包抓取數(shù)據(jù),我們同時需要調(diào)用tushare和pandas包。
import tushare as ts
from pandas import Dataframe
接著我們便需要在tushare官網(wǎng)上進行注冊,然后在個人主頁獲取相當于自己的鑰匙的token
網(wǎng)址:https://tushare.pro/register?reg=427001
拿到token之后,我們便可以在python中調(diào)用tushare包,格式如下:
ts.set_token('你的token')
pro = ts.pro_api()
stock_info = pro.stock_basic()#股票基本信息
之后在根據(jù)官網(wǎng)上給出的數(shù)據(jù)接口調(diào)用不同種類的數(shù)據(jù)。
需要注意的是,由于tushare采取的是積分制,所以有一些數(shù)據(jù)接口需要積累一定的積分才能調(diào)用,詳細信息見官網(wǎng)上的說明。
四、代碼分享
此處分享一下我編寫的抓取所有股票一段時間內(nèi)股東人數(shù)變化并將變化量并進行排序的代碼:
from pandas import DataFrame
import tushare as ts
import time
ts.set_token('be3dddcd0ebf47cb8586afe0428666a1547ae0fc999682d245e8ee1c')
pro = ts.pro_api()
stock_info = pro.stock_basic()#獲取所有股票的基本信息
#print(len(stock_info))
startdate: str = input('請輸入起始時間,格式為20210304\n')
enddate: str = input('請輸入結(jié)束時間\n')
code: str = input('請輸入查詢股票的代碼,輸入0則查詢所有股票\n')
variation = {}
if code != '0':
stockholder_num = pro.stk_holdernumber(ts_code=code,start_date=startdate,end_date=enddate)
#print(stockholder_num)
df=DataFrame(stockholder_num)
df.to_excel('stockholder_num.xlsx')
else:
for i in range(0,len(stock_info)):#遍歷所有股票
if i>0 and i % 100 == 0:
time.sleep(60)#由于每分鐘調(diào)用限制,每調(diào)用100次等60s
code = stock_info.at[i,'ts_code']
#print(code)
stockholder_num = pro.stk_holdernumber(ts_code=code,start_date=startdate,end_date=enddate)
#print(stockholder_num)
try:#由于一段時間內(nèi)不一定每只股票都公告了股東人數(shù),所以有可能會報錯
later = stockholder_num.at[0,'holder_num']
former = stockholder_num.at[len(stockholder_num)-1,'holder_num']
change = later - former
except:#如果沒有公告股東人數(shù)則跳過這一支股票進入下一支
continue
#print(change)
variation[stock_info.at[i,'ts_code']] = change#將股東人數(shù)變化量存入字典
#print(i)
rank = sorted(variation.items(), key = lambda kv:(kv[1], kv[0]), reverse=True)#給字典排序
print(rank)
df=DataFrame(rank)
df.to_excel('stockholder_num.xlsx')#將數(shù)據(jù)存入Excel表中
到此這篇關(guān)于如何用Python中Tushare包輕松完成股票篩選(詳細流程操作)的文章就介紹到這了,更多相關(guān)Python Tushare股票篩選內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- Python爬蟲回測股票的實例講解
- 使用python爬蟲實現(xiàn)網(wǎng)絡(luò)股票信息爬取的demo
- python基于機器學(xué)習(xí)預(yù)測股票交易信號
- python爬取股票最新數(shù)據(jù)并用excel繪制樹狀圖的示例
- python實現(xiàn)馬丁策略回測3000只股票的實例代碼
- 基于Python爬取搜狐證券股票過程解析
- 基于Python爬取股票數(shù)據(jù)過程詳解
- 關(guān)于python tushare Tkinter構(gòu)建的簡單股票可視化查詢系統(tǒng)(Beta v0.13)
- Python爬取股票信息,并可視化數(shù)據(jù)的示例
- python用線性回歸預(yù)測股票價格的實現(xiàn)代碼
- python 簡單的股票基金爬蟲