No project description provided
Project description
FanGraphs-Export
The FanGraphs website, well-known among baseball fans, provides a variety of baseball statistics. The statistics available are extremely expansive, as the website brags stats for every player in MLB history.
The fangraphs
package allows for simple, intuitive parsing of the many webpages available.
While not every page is "scrape-able" (i.e. the pages are most composed of graphics),
there are plans for covering as many pages as possible, including the most popular ones.
This package contains modules for scraping and exporting data from each of the covered webpages.
Dependencies
The fangraphs
library requires Python version 3.6 or higher.
The following libraries along are required for the fangraphs
library.
BeautifulSoup4
lxml
playwright
pytest
requests
Note: The dependencies of each package listed above are also required.
To install all the necessary packages, run:
pip install -r requirements.txt
Note: The browser binaries of playwright
are needed for proper usage.
To install the browser binaries, run playwright install
.
See the Playwright documentation for more information.
Documentation
The Read the Docs documentation can be found here.
Basic Usage
Each group of FanGraphs pages (e.g. Leaders, Projections, etc.) which is covered has an individual module. Each webpage in each group of webpages has an individual class covering the page.
Covered FanGraphs webpage groups:
Leaders
FanGraphs Leaders pages:
- Major League Leaderboards
- Splits Leaderboards
- Season Stat Grid
- 60-Game Span Leaderboards
- KBO Leaderboards
- WAR Leaderboards
from fangraphs.leaders import leaders
mll = leaders.MajorLeague()
splits = leaders.Splits()
ssg = leaders.SeasonStat()
gsl = leaders.GameSpan()
intl = leaders.International()
war = leaders.WAR()
Tests
To run all tests, run pytest FanGraphs
To run the tests for a specific module, run pytest fangraphs/tests/test_module_name.py
.
For example,
pytest fangraphs/tests/test_leaders.py
To run the tests for a specific class, run pytest -k "TestClassName"
.
For example,
pytest -k "TestMajorLeagueLeaderboards"
License
The code in this repository is licensed under an MIT License.
Copyright (c) 2021 Jacob Lee
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for fangraphs-1.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5d429dbfbead51bed341ef09827e9226161ac5c471e725add3a606cfe670371d |
|
MD5 | d0656d6a30bfa4b95458abe5e86d3bc8 |
|
BLAKE2b-256 | 103f0ab27fb2ee96cb5e3dc5c17323791dad844c743cace3ee2a85e9cf5c2616 |