Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/antonengelhardt/kicktipp-bot
A bot which can submit tips for a Kicktipp competition based on quotes.
https://github.com/antonengelhardt/kicktipp-bot
bot kicktipp python selenium selenium-python sportbetting sports webscraper
Last synced: 2 months ago
JSON representation
A bot which can submit tips for a Kicktipp competition based on quotes.
- Host: GitHub
- URL: https://github.com/antonengelhardt/kicktipp-bot
- Owner: antonengelhardt
- License: mit
- Created: 2022-11-14T11:05:33.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-24T09:58:51.000Z (2 months ago)
- Last Synced: 2024-11-24T10:29:48.961Z (2 months ago)
- Topics: bot, kicktipp, python, selenium, selenium-python, sportbetting, sports, webscraper
- Language: Python
- Homepage:
- Size: 122 KB
- Stars: 16
- Watchers: 2
- Forks: 5
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
# kicktipp-bot
This script can automatically enter tips into Kicktipp based on the quotes of the bookmakers. It is written in Python and uses Selenium to interact with the website.
## Run
Copy the contents of the `.env.example` file into a new file called `.env` and fill in the values.
### Python
If you use the [fish shell](https://fishshell.com/), you can use the `envsource .env` command, from [this GitHub Gist](https://gist.github.com/nikoheikkila/dd4357a178c8679411566ba2ca280fcc) to load the environment variables.
```bash
# Install dependencies
pip install -r requirements.txt# Run the script
python main.py# Headless mode
python main.py --headless
```### Docker
Install Docker and run the following commands.
```bash
# Get Image
docker pull ghcr.io/antonengelhardt/kicktipp-bot:amd64# Run Container and set your env variables
docker run \
-it \
--name kicktipp-bot \
--platform linux/amd64 \
--env-file .env \
ghcr.io/antonengelhardt/kicktipp-bot:amd64
```or deploy with Kubernetes.
## Environment Variables
| Variable | Description | Example | Required |
| --- | --- | --- | --- |
| `KICKTIPP_EMAIL` | Your Kicktipp email | `[email protected]` | Yes |
| `KICKTIPP_PASSWORD` | Your Kicktipp password | `password` | Yes |
| `KICKTIPP_NAME_OF_COMPETITION` | The name of the competition you want to tip for | `mycoolfriendgroup` | Yes |
| `KICKTIPP_HOURS_UNTIL_GAME` | The script will tip games which start in the next x hours | `24` | No |
| `KICKTIPP_RUN_EVERY_X_MINUTES` | The script will run every x minutes | `60` | No |
| `CHROMEDRIVER_PATH` | The path to the chromedriver binary | `/usr/bin/chromedriver` | No |
| `ZAPIER_URL` | The URL of your Zapier Webhook | `https://hooks.zapier.com/hooks/catch/123456/abcdef/` | No |
| `NTFY_URL` | The URL of your NTFY Webhook | `https://ntfy.your-domain.com` | No |
| `NTFY_USERNAME` | The username for your NTFY Webhook | `username` | No |
| `NTFY_PASSWORD` | The password for your NTFY Webhook | `password` | No |
| `WEBHOOK_URL` | The URL of some generic webhook. | `https://your-home-assistant-url.com/api/webhook/your-webhook-id` | No |## Notifications
If you want to receive a notification when the script tips for a match, you can use the Zapier or NTFY integration.
### Zapier
Please create a Zapier Account and set up the following Trigger: Custom Webhook. Please also make sure you set the ENV Variable `ZAPIER_URL` to the URL of your custom webhook. Then you can set up actions like sending an email or a push notification.
### NTFY
Set up your [ntfy](https://github.com/binwiederhier/ntfy?tab=readme-ov-file) server and set the ENV Variables `NTFY_URL`, `NTFY_USERNAME` and `NTFY_PASSWORD` to the values of your server. Create the topic `kicktipp-bot` and subscribe to it. Then you will receive a notification when the script tips for a match.
### Generic Webhook
Set up a webhook (e.g in [Home Assistant](https://www.home-assistant.io/integrations/webhook/)) and set the ENV Variable `WEBHOOK_URL` to the URL of your webhook. Then you will receive a notification when the script tips for a match.
## Related projects
- [kicktipp-bot-serverless](https://github.com/tbrodbeck/kicktipp-bot-serverless) (written by [tbrodbeck](https://github.com/tbrodbeck)) uses Playwright instead of Selenium and runs as a one time job, so that it can be scheduled by other tools like Cron