All the info used for this project come from this websites: https://www.footmercato.net/ https://www.winamax.fr/
To make the code work you will need to have Python and Pip installed in your computer
Link to download python: https://www.python.org/downloads/
Link to download pip: https://pip.pypa.io/en/stable/installation/
Link to download google chrome: https://www.google.com/intl/fr_fr/chrome/
For Auto Mode Only
How to do a discord webhook? https://www.svix.com/resources/guides/how-to-make-webhook-discord/
Download all the modules required for the bot to work using this command:
pip install -r requirements.txtTo start the bot just do
python foot.pyThis bot have 2 modes:
-
"Stat of team" that will get the recent stats of a team depending on it's 20 last games.
-
"Team vs Team" this mode will try to calculate the score of a Team A and a Team B based on it's last X recent games and will at the end tell the result between Team A and Team B Loose,Draw or Win.
-
"Random Stat of team" that will get the recent stats of a random team depending on it's 20 last games.
-
"Random Team vs Random Team" this mode will try to calculate the score of a random Team A and a random Team B based on it's last X recent games and will at the end tell the result between Team A and Team B Loose,Draw or Win.
To get the best score possible the bot will give a default score of a team based on the power of it's league (for exemple a Premier League team will get the best score because it's the best league in the world) and it's position on the league then it will look into the last X games of the team and will also look into the last stat of each oppenents and calculate a score based on several factor like: win, loose, home game, away game or if the team beaten was stronger...
Then at the end it will get a final score and will reapeat the process for team B.
After that it will look at head to head if enough games where played between the 2 teams and adjust both score
To end it will look at all the player out on both team and adjust both team score based on that.
Depending on the score of both team it will either display loose draw or win.
It works the same with the national team mode but instead of club league it's taking national team.
If you want to see detailed of all the main action did during it's computing just write anythin into the NoPrint.txt file
To use just do python foot.py then it will displayay a menu with 2 choices:

If you choose 1 it will display game for National team

If you choose 2 it will display game for League team

Then if you choose 1 it will display the list of available country then you will need to choose
Then depending of your choice it will display all the team of the country 
If you choose 2 it will do the same as 1 but with random team
And after it will do the same process for team B and then it will start to compare both teams and give you the result at the end.
If you choose 3 it will ask you the same things as choice 1 but for one team only then at the end will give you the stats of the team.
If you choose 4 it will ask you the same things as choice 1 but for one random team only then at the end will give you the stats of the team.
If you choose 5 it will just quit the program
Before using it make sure to put your webhook url into discordWebhookUrl.txt file and created your own discord server to see all the data. https://support.discord.com/hc/en-us/articles/204849977-How-do-I-create-a-server If you want to analyze all the games available of the next day just run
python autoFoot.py 1 python autoFoot.py 2 python autoFoot.py 3 python autoFoot.py 4 python autoFoot.py 5Run each command on a different window/terminal prompt It will analyze automaticaly all the game available of the day and will send all the result (Match,Winner,Percent and Odds) to your discord channel.
You can also analyze all the games available of the next X days by adding the number you want to the dayNb.txt file
For example if you want to analyze the games comming in 4 days put 4 on the dayNb.txt file.
Then If you want all the data on the .txt files just run printData.py and it will store all the data into result.txt,percent.txt,odds.txt and match.txt files.
Result of Arsenal VS Dortmund using only the last 3 games of each team (Test done the 21 December 2024)
Woring a 2.0 version to get even better result here are the things I want to add:
-A Gui to visualise everything better
-XG ✅
-XG against ✅
-Injuries ✅
-Relative form (last 8 games performances) ✅
-Head to Head between 2 teams ✅
-Big chances & Big chances missed
And more...
To see the 1.0 version go here: https://github.com/steevenakintilo/BadFootballBet/tree/928aed515bde7e2a5168e43851ac31aa74034132
The math behind my bot is really easy and could be understand by any high school student since it's just statistics, multiplication, addition, subtraction, division, and cross-multiplication.
All the key data number used such as the score of each league come from the league ranking of each leagues and for some I asked chatgpt and review it's result online for smaller and lesser-known league.
And for the computing of the score of teams it's just home-made formula using importance of the value such as goal,score etc.
This program was made for fun therefore the calculus are not 100% right and it will never be, it's impossible to guess the result of all the possible game. Result are even less reliable on National Team mode since there is less game to analyse Don't use this program to bet money you could loose money. Afterall the calculus are made with real time stats to make the result as close as possible.
CR7 IS THE GOAT
