Cricsheet-Data 0.1.1a0
Used to download, parse, and upload One Day International (ODI) match results and ball-by-ball innings data from Cricsheet.org to an SQLite Database.

<h1 align="center">Cricsheet Data</h1>

<p align="center">
  <img alt="Github top language" src="https://img.shields.io/github/languages/top/LMastro99/cricsheet-data?color=56BEB8">

  <img alt="Github language count" src="https://img.shields.io/github/languages/count/LMastro99/cricsheet-data?color=56BEB8">

  <img alt="Repository size" src="https://img.shields.io/github/repo-size/LMastro99/cricsheet-data?color=56BEB8">

  <img alt="License" src="https://img.shields.io/github/license/LMastro99/cricsheet-data?color=56BEB8">

  <!-- <img alt="Github issues" src="https://img.shields.io/github/issues/LMastro99/cricsheet-data?color=56BEB8" /> -->

  <!-- <img alt="Github forks" src="https://img.shields.io/github/forks/LMastro99/cricsheet-data?color=56BEB8" /> -->

  <!-- <img alt="Github stars" src="https://img.shields.io/github/stars/LMastro99/cricsheet-data?color=56BEB8" /> -->
</p>

<!-- Status -->

<!-- <h4 align="center"> 
	🚧  Cricsheet Data 🚀 Under construction...  🚧
</h4> 

<hr> -->

<p align="center">
  <a href="#dart-about">About</a> &#xa0; | &#xa0; 
  <a href="#sparkles-features">Features</a> &#xa0; | &#xa0;
  <a href="#white_check_mark-requirements">Requirements</a> &#xa0; | &#xa0;
  <a href="#checkered_flag-starting">Starting</a> &#xa0; | &#xa0;
  <a href="#memo-license">License</a> &#xa0; | &#xa0;
  <a href="https://github.com/LMastro99" target="_blank">Author</a>
</p>

<br>

## :dart: About ##

Used to download, parse, and upload One Day International (ODI) match results and ball-by-ball innings data from Cricsheet.org to an SQLite Database.

For more details, see the [demo](/doc/demo.ipynb)

## :sparkles: Features ##

:heavy_check_mark: Cricsheet_Data: A class used to define a Cricsheet_Data object for fetching, preprocessing, and loading user specified cricket data based on gender from cricsheet.org to an SQLite database.
- \_\_init\_\_: This function initializes the Cricsheet_Data object.
- set_urls: This function sets the URLs for the current Cricsheet_Data object to fetch user specified cricket data based on gender from cricsheet.org.


:heavy_check_mark: Fetch_Data: A class used to fetch user specified cricket data based on gender from cricsheet.org.
- \_\_init\_\_: This function initializes the Fetch_Data object.
- download_data: This function is used to download user specified cricket data based on gender from cricsheet.org.


:heavy_check_mark: Preprocess_Data: A class used to preprocess user specified cricket data based on gender from cricsheet.org.
- \_\_init\_\_: This function initializes the Preprocess_Data object.
- instantiate_parents: This function instantiates the parent classes 'Fetch_Data' and 'Cricsheet_Data' based on user input.
- batch_data: This function batches the user specified data and splits them by key.
- group_by_key: This function returns a list of DataFrames grouped by key representing the user's specified batch of data.


:heavy_check_mark: Decorators:
- entry_exit: This function is called as a decorator to indicate the entry and exit of a user specified function.

## :white_check_mark: Requirements ##

Before starting :checkered_flag:, you need to have [Git](https://git-scm.com) installed.

## :checkered_flag: Starting ##

```bash
# Clone this project
$ git clone https://github.com/LMastro99/cricsheet-data

# Access
$ cd cricsheet-data

# Install dependencies
$ yarn

# Run the project
$ yarn start

# The server will initialize in the <http://localhost:3000>
```

## :memo: License ##

This project is under license from GNU AFFERO GENERAL PUBLIC LICENSE. For more details, see the [LICENSE](LICENSE.txt) file.


Made with :heart: by <a href="https://github.com/LMastro99" target="_blank">Leonidas (Louie) Mastrokostas</a>

&#xa0;

<a href="#top">Back to top</a>