接下来就对 TuShare 这个源代码进行一个简单的分析,
来了解一下大体上这个包是怎么实现的。
以及了解一下它用的数据源是什么等比较感兴趣的内容。
代码直接在:https://pypi.python.org/pypi/tushare/ 就可以获取。
目前版本是 0.4.7。
代码的目录结构如下所示:
datayes(通联数据相关)
internet
boxoffice.py (电影票房)
stock
billboard.py (龙虎榜)
classifying.py (分类数据)
cons.py (定义名种链接对应的列表,字典)
fundamental.py (基本面)
macro.py (宏观数据)
macro_vars.py (宏观数据参数)
newsevent.py (新闻)
news_vars.py(新闻参数)
reference.py (投资参考)
ref_vars.py (投资参考参数)
shibor.py(利率)
trading.py (交易)
util (共通函数)
common.py (getData / encodePath等网络解析函数)
dateu.py (日期相关)
netbase.py (client)
store.py (??)
upass.py(通联数据的令牌)
另外,这个库依赖于 pandas ,一些内容保存的都是直接用 pandas 的接口,所以对 pandas 也要了解一下。不过这先放在一边。
因为我们知道对应的链接基本是在 stock/cons.py 里,那对应的数据源可以知道:
票房来源:http://www.cbooo.cn/
交易数据来源:http://hq.sinajs.cn/
滚动新闻来源:http://roll.news.sina.com.cn/interface/rollnews_ch_out_interface.php
还有一个简单的确认办法就是:
直接在代码的Request后打印出对应的URL名称。
比如:
print request.get_full_url()
这样就可以知道每个操作对应的URL了。
至于内部处理,主要是结合 lxml, pandas,urllib 这几个库来获取数据并分析输出。
这个到时候再看一下上述库的API规范。