雅虎财经的股票代码刮板

Yahoo-ticker-downloader的Python项目详细描述


生成.csv、.xlsx、.json和.yaml文件(所有文件都包含相同的数据,但在 不同格式)用于股票、ETF、期货、指数、共同基金、货币, 认股权证和债券。股票代码、公司名称和交易所保存为 所有符号。

它从https://finance.yahoo.com/lookup/获取数据请注意:它 由于Yahoo设置的限制,无法获取所有符号。

要求

python 2.7或python 3.5+

安装

来自python包管理器(首选):

pip install Yahoo-ticker-downloader

来源:

python setup.py install

示例用法

usage: YahooTickerDownloader.py [-h] [-i] [-e] [-E EXCHANGE] [-s SLEEP] [-p]
                                [type]

positional arguments:
  type                  The type to download, this can be: generic

optional arguments:
  -h, --help            show this help message and exit
  -i, --insecure        use HTTP instead of HTTPS
  -e, --export          export immediately without downloading (Only useful if
                        you already downloaded something to the .pickle file)
  -E EXCHANGE, --Exchange EXCHANGE
                        Only export ticker symbols from this exchange (the
                        filtering is done during the export phase)
  -s SLEEP, --sleep SLEEP
                        The time to sleep in seconds between requests
  -p, --pandantic       Stop and warn the user if some rare assertion fails

例如,要下载您运行的所有股票符号,请如下所示:

YahooTickerDownloader.py

这个程序需要几个星期才能完成。 该程序支持暂停和恢复下载。 按ctrl+c暂停下载。重新启动程序 在同一工作目录中继续下载。 可以使用-e标志导出部分下载的结果。

csv输出示例:

Ticker      Name    Exchange        exchangeDisplay Type    TypeDisplay
JNUG        Direxion Daily Jr Gld Mnrs Bull 3X ETF  ASE     NYSE MKT        E       ETF
DWDP        DowDuPont Inc.  NYQ     NYSE    S       Equity
E   Eni S.p.A.      NYQ     NYSE    S       Equity
EQH AXA Equitable Holdings, Inc.    NYS     NYSE    S       Equity
XOM Exxon Mobil Corporation NYQ     NYSE    S       Equity
ETP Energy Transfer Partners, L.P.  NYQ     NYSE    S       Equity
ES=F        E-mini S&P 500 Index Futures,Jufuture   CME     Chicago Mercantile Exchange     F       Futures
NQ=F        E-mini Nasdaq 100 Index Futuresfuture   CME     Chicago Mercantile Exchange     F       Futures
GE=F        Eurodollar Futures,Sep-2018future       CME     Chicago Mercantile Exchange     F       Futures
...ect

根据您下载的类型,您将得到3.000到10.000之间的+ 条目。

其他资源

下载符号的历史记录:ystockquote

变更日志

  • 版本3.0.1(2018-12-01)
    • 删除了reppy依赖项
  • 版本3.0.0(2018-05-27)
    • 切换到不同的json api(searchassist)
  • 版本2.2.0(2018-01-31)
    • 如果一个导出失败,则继续导出为不同格式(#41)
    • 检查robots.txt(反功能)
  • 版本2.1.1(2017-08-02)
    • 列出了太旧的请求依赖项(35)
  • 版本2.1.0(2017-05-10)
    • 添加市场参数(拉取请求33)
  • 版本2.0.1(2017-05-07)
    • 修正了除股票和货币外的所有下载都停止工作的问题。
  • 版本2.0.0(2017-05-05)
    • 切换到JSON api
  • 版本1.0.0(2017-04-04)
    • 从0.10.0还原了一些更改。邦德回来了。恢复到英文站点而不是德语。
    • 再次解决CSV问题。关闭23和16。
    • 合并26个工作区Y!B>;2000极限
    • Scraper现在可以以运行时为代价进行更多的刮削
    • 支持python2的人回来了。支持最新的Python2&3。
    • 拆下XLS支架
    • 增加了XLSX支持(29)
  • 版本0.10.1(2017-02-04)
    • 更具描述性的帮助信息
  • 版本0.10.0(2017-02-02)
    • 删除了债券下载选项。
    • 使用不同的雅虎资源。修复18
    • 从分类器中删除python2。与#16有关
  • 版本0.9.0(未发布)
    • 添加了一个标志以限制特定证券交易所的输出。
  • 版本0.8.1(2016-08-17)
    • 7的解决方法:下载中断
    • 9的解决方案:unicodeencodeerror
  • 版本0.7.0(2016-03-20)
    • 添加–导出选项。它将立即将.pickle文件转换为所需的输出格式
  • 版本0.6.0(未发布)
    • 如果在处理fetchhtml时引发httperror或chunkedencodingerror,则添加3次以指数形式后退的重试。
  • 版本0.5.0(2015-08-16)
    • 允许使用不安全连接下载。
    • 临时下载的文件名现在包括ticker类型。
  • 版本0.4.0(2014-10-28)
    • 现在可以下载许可证符号
    • 债券符号现在可以下载。
  • 版本0.3.0(2014-08-14)
    • 使用https而不是http
    • 如果页面不包含符号,请重试获取该页面(问题4的“修复方法”
    • 将所有“curreny”重命名为“currency”
    • 相对进口是美国编辑
    • 修正:当使用python2时,它输出的csv文件是用utf-8编码的
    • 性能:显著降低了内存消耗
    • 它现在除了输出.csv之外,还输出.json、.yaml和.xls文件。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使用EntityManager有没有更有效的习惯用法?   Android上的java Google应用程序引擎(GAE)响应代码和cookie   如何在Java中创建单元测试?   java从DB获取特定列的最新行   java替换所有悬空元字符   java使用Hibernate删除SQL表中的数据   swing显示JComponent对象Java   java在确认内容类型后如何将URL保存到文件?   javascript如何从段落中选择大量单词?(硒)   java在Linux上使用BundleEnableTiveCode不起作用   java使用日志似然性来比较不同的mallet主题模型?   java无法在Tomcat7上运行Spring Boot 2.0:“由于缺少ServletWebServerFactory bean,无法启动ServletWebServerApplicationContext。”   java有办法显式引用非静态内部类实例吗?   java如何使用Spring的NamedParameterJdbcTemplate在MySQL数据库中创建和删除表?