YFrake is a fast and flexible stock market, forex and cryptocurrencies data scraper and server [note1]. It enables developers to build powerful apps without having to worry about the details of session management or maximizing throughput [note2].
YFrake has caching built in to speed up requests even more and to reduce load on the source servers. The cache and other YFrake options are fully customizable through the configuration file.
YFrake can be used as a client to directly return market data to the current program or as a programmatically controllable server to provide market data to other applications.
In addition, all network requests by the client in both sync and async modes are non-blocking, which means that your program can continue executing your code while network requests are in progress.
The best part about YFrake is its built-in swagger API documentation which you can use to perform test queries and examine the returned responses straight in your web browser.
YFrake is built upon the widely used aiohttp package and its plugins.
The tutorials and the reference manual is available at: yfrake.readthedocs.io
Your suggestions on how to improve the library or the docs are welcome!
Please open an issue to report bugs or to share your ideas.
[note1]: Stock market data is sourced from Yahoo Finance.
[note2]: The limits of YFrake are configurable and depend on the capabilities of your system.