├── .gitignore ├── .travis.yml ├── CHANGELOG.md ├── LICENSE ├── README.md ├── cleanup.sh ├── finam ├── __init__.py ├── config.py ├── const.py ├── exception.py ├── export.py ├── interval.py └── utils.py ├── requirements.txt ├── samples ├── download.py ├── listing.py └── lookups.py ├── scripts ├── finam-download.py └── finam-lookup.py ├── setup.py └── tests ├── __init__.py ├── fixtures ├── data_sber_daily.csv ├── data_sber_minutes30.csv ├── data_sber_monthly.csv ├── data_sber_ticks.csv ├── meta_blank.js ├── meta_malformed.js ├── meta_valid.js ├── page_broken.html └── page_valid.html ├── tests_integration.py └── tests_unit.py /.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | .coverage 3 | .noseids 4 | dist/ 5 | build/ 6 | .eggs/ 7 | finam_export.egg-info/ 8 | .devcontainer 9 | .vscode 10 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | dist: xenial 2 | language: python 3 | 4 | python: 5 | - "3.7" 6 | - "3.8" 7 | - "3.9" 8 | 9 | install: 10 | - pip install -r requirements.txt 11 | 12 | script: 13 | - nosetests -vv 14 | 15 | cache: 16 | - pip 17 | 18 | notifications: 19 | email: false 20 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | All notable changes to this project will be documented in this file. 3 | 4 | The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), 5 | and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). 6 | 7 | ## [5.1.1] - 2021-11-04 8 | ### Fixed 9 | - renamed CRYPTO_CURRENCY -> CRYPTO_CURRENCIES for the sake of consistency 10 | 11 | ## [5.1.0] - 2021-11-04 12 | ### Added 13 | - crypto currencies 14 | 15 | ## [5.0.1] - 2021-08-28 16 | ### Fixed 17 | - versions/dist upload 18 | 19 | ## [5.0.0] - 2021-08-28 20 | ### Changed 21 | - dropped python3.6 support as it's not supported even by pandas1.2 either (https://pandas.pydata.org/pandas-docs/stable/whatsnew/v1.2.0.html#increased-minimum-version-for-python) 22 | 23 | ## [4.2.0] - 2021-08-28 24 | ### Added 25 | - fill_empty option support in finam.export 26 | 27 | ### Changed 28 | - ParserError import from the right place (pandas.errors) 29 | 30 | ## [4.1.0] - 2021-06-14 31 | ### Changed 32 | - fetcher passed to ExporterMeta https://github.com/ffeast/finam-export/pull/22 33 | 34 | ## [4.0.2] - 2021-02-06 35 | ### Fixed 36 | - TICKS data download in some cases might miss some days (https://github.com/ffeast/finam-export/issues/16) 37 | 38 | ## [4.0.1] - 2020-10-04 39 | ### Fixed 40 | - version in setup.py 41 | 42 | ## [4.0.0] - 2020-10-04 43 | ### Added 44 | - automatic request split for long intervals (https://github.com/ffeast/finam-export/issues/4) 45 | ### Changed 46 | - from now on everything needs to be exported from finam package (instead of finam.export and others) 47 | - automatic retries when hitting the error "Система уже обрабатывает Ваш запрос. Дождитесь окончания обработки." 48 | ### Fixed 49 | - download from time intervals that don't include any trading sessions (i.e. 2018-01-01) is now safe and would result in empty data file instead of an exception 50 | 51 | ## [3.0.1] - 2020-09-12 52 | ### Changed 53 | - dropped python2.x support as the newest pandas doesn't support it 54 | 55 | ## [3.0.0] - 2020-09-12 56 | ### Added 57 | - --ext option support in ./scripts/finam-download.py to enable configuration of the resulting files 58 | ### Changed 59 | - date/time export format changed to separate columns and