When betting on sports events, using arbitrage opportunities is a popular technique used to gain an edge against sportsbookmakers.
The idea is simple; place one bet per each outcome with different betting companies, the bettor can then make a profit regardless of the outcome. Mathematically arbitrage occurs when there are a set of odds, which represent all mutually exclusive outcomes that cover all state space possibilities (i.e. all outcomes) of an event (wikipedia.org).
Professional bettors are currently paying for a subscription on sites like (oddstorm.com) to get arbitrage opportunities. If you are willing to scrape and compare the odds on your own, this repo may save you some time.
The tool scrapes for odds at (currently) two bookmaker websites and stores the data in a database.
We use selenium webdriver to create a headless browser giving you, the user, the opportunity to read javascript data from the bookmaker websites. After that we parse this data and extract the sorted data into a SQLite database.
The tool will do the following
- Open 1xbet.com and asianodds.com using a headless browser (chrome).
- Navigate to username and password fields on the websites and input username and password seen in AO.py and XB.py.
- Every 10th minute scrape the websites for dates, time, teamnames and odds (be careful to not penetrate their servers).
- Parse the data and extract it to a SQlite database.
- Inform the user of arbitrage opportunities.
Currently 1xbet.com and asianodds.com are being scraped for it's data, as arbitrage opportunities between the two are often occuring. This tool can be easily extended to support other websites.
Accounts (username and password) at 1xbet.com and asianodds.com. This must go into XB.py and AO.py respectively.