最终出口
从finam.ru下载数据的python客户端库
能力使用一组丰富的数学选项按市场类别、ID、代码、名称或其组合查找合同
下载finam.ru上任何时间段的数据,范围从计时到每月分辨率不等
提供的样品samples/listing.py-只需列出来自每个受支持市场的一些合同
samples/download.py-下载一些数据并打印出来
samples/lookups.py-演示如何利用查找功能
实用程序脚本scripts/finam-download.py-提供丰富的独立脚本来下载finam的数据
scripts/finam-lookup.py-快速查看finam上的可用内容
给我看看有用的东西!
这是输出./samples/download.py
*** Current Russian ruble exchange rates ***
... some debugging output omitted ...
index
2016-11-07 63.945 64.085 63.6625 63.695 1214085000
[1 rows x 5 columns]
*** Current Brent Oil price ***
INFO:root:Loading data from http://export.finam.ru/table.csv?sep=3&at=1&e=.csv&d=d&f=table&dtf=1&MSOR=0&tmf=3&mstimever=1&mstime=on&sep2=1&em=19473&code=BZ&cn=BZ&df=1&yf=2007&dt=7&datf=5&yt=2016&market=24&mf=0&mt=10&p=8
INFO:root:Decoding response
index
2016-11-07 45.95 46.38 45.8 46.01 52605
[1 rows x 5 columns]
下面是生成此输出的代码:import logging
from finam.export import Exporter, Market, LookupComparator
"""
Full-on example displaying up-to-date values of some important indicators
"""
def main():
exporter = Exporter()
print('*** Current Russian ruble exchange rates ***')
rub = exporter.lookup(name='USDRUB_TOD', market=Market.CURRENCIES)
assert len(rub) == 1
data = exporter.download(rub.index[0], market=Market.CURRENCIES)
print(data.tail(1))
print('*** Current Brent Oil price ***')
oil = exporter.lookup(name='Brent', market=Market.COMMODITIES,
name_comparator=LookupComparator.EQUALS)
assert len(oil) == 1
data = exporter.download(oil.index[0], market=Market.COMMODITIES)
print(data.tail(1))
if __name__ == '__main__':
logging.basicConfig(level=logging.DEBUG)
main()
播放示例
如果您还没有从pypi安装它:pip install -r ./requirements.txt
./samples/listing.py
安装后,请运行./samples/listing.py
技术细节针对Linux/Mac
在内部使用pandas,返回的所有数据都是pandas数据帧
用python2.7和python3.6+测试
良好的测试覆盖率
详细记录发生的情况
开发复制回购协议
pip install -r ./requirements.txt
运行测试以确保一切正常
nosetests
继续提高它!
别忘了用测试覆盖您的更改
欢迎加入QQ群-->: 979659372
推荐PyPI第三方库