/exploreRiotAPI

Me learning how to code Python, data pipeline, and interact with Riot Games API

Primary LanguagePython

exploreRiotAPI

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

Riot Games API End-to-End Analytics Pipeline

Code for pulling data from the Riot Games API and making the data ready for analytics
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap

About The Project

Product Name Screen Shot

I am building this end-to-end data pipeline to bring account and match data from the Riot Games Da API to an analyzable state.

Pipeline flow:

  • Pull Ranked player profiles to provide seed data as recommended by Riot Games API developers and community members/managers on their Discord.
  • Pull match history data based on these profiles.
  • Store all the data in a data lake.
  • Clean and process data on the way to a data warehouse.
  • Live reporting available from a data warehouse.
  • Data pulling from data API from a data warehouse.

(back to top)

Getting Started

To get a local copy up and running follow these simple example steps.

Prerequisites

  • an IDE that can interface with a Python interpreter, ideally, VS Code
  • a Python interpreter (Win or Mac)

Instructions

  1. Install VS Code.
  2. Install Python.
  3. Open VS Code.
  4. Open the Extensions pane, on the left by default, and install the Python extension.
  5. Git clone this repo (easiest way is to open the Source Control pane on the left and click "Clone Repository" and paste in the URL "https://github.com/afrayedknott/exploreRiotAPI.git" at the prompt).
  6. Open the project repo.
  7. Press Ctrl+Shift+P to access the Command Palette (list of preset commands) and search for "Python: Select Interpreter".
  8. Select "Python: Select Interpreter" to get a list of Python interpreters and choose the "Recommended" one.
  9. Get the config.json file from Dropbox and store it in the parent folder of this repo.
    • The API key is only valid for 24 hours. Please message me for a refreshed API key.
    • Open config.json with a text or code editor and replace the API key at the key-value pairing:
    api_key: "##ENTER##API##KEY##HERE##"
    
  10. Run the command below in the Terminal to install all the required modules/packages which are listed in the requirements.txt file in the repo.
pip install -r requirements.txt

(back to top)

Usage

Use this space to show useful examples of h

ow a project can be used. Additional screenshots, code examples and demos work well in this space. You may also link to more resources.

For more examples, please refer to the Documentation

(back to top)

Roadmap

Now

  • ReadMe with instructions on how non-Python users can run and test the code
  • Make required files that shouldn't be held in the repo itself (such as config.json and requirements.txt) easily downloadable

Next

  • Add the next step in the data pipeline of extracting ids from the seed data pull to extract match data
    • Make it easily runnable from a pre-existing file of seed data so the user can test out this feature without waiting for a fresh pull which could take multiple hours or days
    • Make it easily swappable to go from non-test mode to test mode

Later

  • SQL Handler
  • Refactor to pipe all the data pulling and data pushing to a postGres db instead
    • Utilize the JSONB array functionality of postGres to have a hybrid db
  • ReadMe with images and diagrams for the About Project and Usage section
  • Set up View Demo

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contact

Eugene Choi - @afrayedknotty - eugenechoi86@gmail.com

Project Link: https://github.com/afrayedknott/exploreRiotAPI

(back to top)