An open API service indexing awesome lists of open source software.

https://github.com/woctezuma/egs-15daysofgames

Datamining of 15 Days of (free) Games at the Epic Games Store (EGS).
https://github.com/woctezuma/egs-15daysofgames

15daysofgames datamining egs epic epic-games epic-games-launcher epic-games-store fortnite free-game free-games games graphql metaverse

Last synced: 11 months ago
JSON representation

Datamining of 15 Days of (free) Games at the Epic Games Store (EGS).

Awesome Lists containing this project

README

          

# EGS: 15 Days of Games

[![Build status with Github Action][build-image-action]][build-action]
[![Code coverage][codecov-image]][codecov]
[![Code Quality][codacy-image]][codacy]

This repository contains Python code to data-mine the 15 Days of (free) Games at the Epic Games Store (EGS).

## Requirements

- Install the latest version of [Python 3.X][python-download-url].
- Install the required packages:

```bash
pip install -r requirements.txt
```

## Usage

To download data of upcoming promotions:

```bash
python download_data.py
```

To filter promotions to focus on potential free games:

```bash
python filter_promotions.py
```

### Work-In-Progress

(Optional) To receive an Access Token for different Auth Clients, with or without an authorization code:

```bash
python check_auth.py
```

NB: cookie information is required to be able to receive a temporary authorization code from within Python.

How to fill-in your cookie information

1. Make sure you are connected to your [Epic Games][epic-games-store-login] account,

2. Visit [`epicgames.com/id/api/`][egs-cookie] to trigger the creation of a cookie value for `EPIC_BEARER_TOKEN`,

3. Press `` in your web browser to access the storage section of the developer tools,

4. Use the filtering option to find the cookie value for `EPIC_BEARER_TOKEN`,

5. Copy-paste this cookie value into a new file called `data/personal_info.json`:

```json
{
"EPIC_BEARER_TOKEN": "PASTE_YOUR_COOKIE_VALUE_HERE"
}
```

## Results

Results are shown [on the Wiki][wiki-results].

A retrospective analysis of the results is conducted [on the homepage of the Wiki][wiki-retrospective-look].

An investigation of the leaks found online is conducted [on the Investigation page of the Wiki][wiki-investigation].

## References

API documentation:

- [`SD4RK/epicstore_api`][egs-api-python]: a Python wrapper for the EGS API,
- [`Tectors/EpicGraphql`][egs-api-graphql]: a documentation of GraphQL queries for the EGS API,
- [`MixV2/EpicResearch`][egs-api-clients]: a documentation of Auth Clients' name, id and secret,
- [`derrod/legendary`][egs-api-hosts]: a documentation of API hosts, along with access token management in [`api/egs.py`][egs-api-token],
- [`acidicoala/ScreamDB`][egs-web-app]: a web app to view EGS item ids,

Data leaks:

- [`egs-datamining`][egs-datamining]: datamining of Epic Games Store (EGS),
- [`geforce-leak`][geforce-leak]: datamining of Nvidia's GeForce NOW (GFN),

GraphQL advice:

- A few [pieces of advice][wiki-graphQL] regarding GraphQL.

[build-action]:
[build-image-action]:

[codecov]:
[codecov-image]:

[codacy]:
[codacy-image]:

[python-download-url]:
[epic-games-store-login]:
[egs-cookie]: < https://www.epicgames.com/id/api/redirect?clientId=319e1527d0be4457a1067829fc0ad86e&responseType=code>

[wiki-results]:
[wiki-graphql]:
[wiki-retrospective-look]:
[wiki-investigation]:

[egs-api-python]:
[egs-api-graphql]:
[egs-api-clients]:
[egs-api-hosts]:
[egs-api-token]:
[egs-web-app]:

[egs-datamining]:
[geforce-leak]: