Skip to content

Commit

Permalink
feat: add static html page generation (#268)
Browse files Browse the repository at this point in the history
Signed-off-by: Eiko Wagenknecht <git@eiko-wagenknecht.de>
  • Loading branch information
eikowagenknecht committed Oct 22, 2023
1 parent 1b8480a commit e9a522c
Show file tree
Hide file tree
Showing 5 changed files with 1,234 additions and 843 deletions.
41 changes: 28 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@
[![Publish to Docker Hub and Github Packages](https://github.com/eikowagenknecht/lootscraper/actions/workflows/docker.yml/badge.svg)](https://github.com/eikowagenknecht/lootscraper/actions/workflows/docker.yml)
[![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa]

You enjoy getting games for free but you *don’t* enjoy having to keep track of the various sources (Amazon Prime, Epic Games, Steam, ...) for free offers? Also your F5 key starts to look a bit worn out? Then this is for you!
You like getting games for free but you *don’t* like having to keep track of the various sources (Amazon Prime, Epic Games, Steam, ...) for free offers? Also your F5 key starts to look a bit worn out? Then this is for you!

## Public feeds / channels / bots

Let's be honest, you're probably not here because you are interested in the technical details of how this works. You just want free games. And that's fine. So without further ado, here's where you find them!
Let's face it, you're probably not here because you're interested in the technical details of how this works. You just want free games. And that's fine. So without further ado, here's where to find them!

### Telegram channels

Want to get a Telegram notification each time a new offer is discovered? Just subscribe to the Telegram channels.
Want to get a Telegram notification every time a new offer is discovered? Simply subscribe to the Telegram channels.

- Amazon Prime ([games](https://t.me/free_amazon_games_ls) and [ingame loot](https://t.me/free_amazon_loot_ls))
- [Epic Games](https://t.me/free_epic_games_ls)
Expand All @@ -29,15 +29,15 @@ For our mobile gamers:

### Telegram bot

Want to receive only the offers *you* want in one single chat? Subscribe directly to the source: The [Telegram LootScraperBot](https://t.me/LootScraperBot) will happily send you push notifications for new offers. You can choose which categories to subscribe there.
Want to receive only the offers *you* want in a single chat? Subscribe directly to the source: The [Telegram LootScraperBot](https://t.me/LootScraperBot) will happily send you push notifications for new offers. You can choose which categories you want to subscribe to.

This is what it currently looks like in Telegram:

![image](https://user-images.githubusercontent.com/1475672/166058823-98e2beb9-7eb5-403d-94c7-7e17966fe9b7.png)

### RSS feeds

You prefer the anonymity and manageability of RSS feeds? Sure. You can use the links below.
Prefer the anonymity and manageability of RSS feeds? Sure. You can use the links below.

- Amazon Prime ([games](https://feed.phenx.de/lootscraper_amazon_game.xml) and [ingame loot](https://feed.phenx.de/lootscraper_amazon_loot.xml))
- [Epic Games](https://feed.phenx.de/lootscraper_epic_game.xml)
Expand All @@ -46,29 +46,44 @@ You prefer the anonymity and manageability of RSS feeds? Sure. You can use the l
- [itch.io games](https://feed.phenx.de/lootscraper_itch_game.xml)
- Steam ([games](https://feed.phenx.de/lootscraper_steam_game.xml) and [ingame loot](https://feed.phenx.de/lootscraper_steam_loot.xml))
- [Ubisoft games](https://feed.phenx.de/lootscraper_ubisoft_game.xml)

For our mobile gamers:

- [Apple iPhone games](https://feed.phenx.de/lootscraper_apple_game.xml)
- [Google Android games](https://feed.phenx.de/lootscraper_google_game.xml)

If you want *everything* in one feed, use [this link](https://feed.phenx.de/lootscraper.xml). If you want to get the offers by email instead, you can use free services like <https://blogtrottr.com/> or <https://feedsub.com/> to convert from RSS to email.

This is what it currently looks like in Feedly:
This is how it looks in Feedly:

![image](https://user-images.githubusercontent.com/1475672/161056100-2fcf005f-19a9-4279-a2d3-5a90855426ff.png)

## How this works
### Static HTML pages

Want to check a website for new deals once in a while, but not be bothered by push notifications? Here are the latest offers in a nice and clean HTML page:

- Amazon Prime ([games](https://feed.phenx.de/lootscraper_amazon_game.html) and [ingame loot](https://feed.phenx.de/lootscraper_amazon_loot.html))
- [Epic Games](https://feed.phenx.de/lootscraper_epic_game.html)
- [Gog games](https://feed.phenx.de/lootscraper_gog_game.html)
- [Humble games](https://feed.phenx.de/lootscraper_humble_game.html)
- [itch.io games](https://feed.phenx.de/lootscraper_itch_game.html)
- Steam ([games](https://feed.phenx.de/lootscraper_steam_game.html) and [ingame loot](https://feed.phenx.de/lootscraper_steam_loot.html))
- [Ubisoft games](https://feed.phenx.de/lootscraper_ubisoft_game.html)
- [Apple iPhone games](https://feed.phenx.de/lootscraper_apple_game.html)
- [Google Android games](https://feed.phenx.de/lootscraper_google_game.html)

If you want *everything* on one giant page, use [this link](https://feed.phenx.de/lootscraper.html).

![image](https://github.com/eikowagenknecht/lootscraper/assets/1475672/845042a8-372d-4f4e-9d01-d9fdfec77038)

## How it works

This Python (3.11+) application uses Selenium to automatically visit sites with free gaming related offers (currently Amazon Prime, Epic Games and Steam are supported, more will follow) and then neatly puts the gathered information into RSS feeds and a Telegram bot. So now you can track the offers using your favorite news reader like Feedly instead of manually visiting the sites or get a message every time a new offer is available.
This Python (3.11+) application uses Playwright to automatically visit websites with free game-related offers (see below for the supported sources) and then puts the collected information neatly into RSS feeds and a Telegram bot.

If you encounter any problems feel free to open an issue here and I'll try my best to help. I'd also really like to hear your feature requests (even though I still have quite some ideas myself)!. This is tracked in the Github issues as well.
If you encounter any problems feel free to open an issue here and I'll do my best to help. I'd also love to hear your feature requests! This is also tracked in the Github issues.

### For power users and developers

You can either run this project locally on your computer or in any environment capable of running a Docker container.

If you want to do so or even contribute, please see the [README for developers](README_DEV.md) file.
If you want to do this or even contribute, please see the [README for developers](README_DEV.md) file.

## License

Expand Down
Loading

0 comments on commit e9a522c

Please sign in to comment.