Я пытаюсь оценить шансы на ставки у производителя книг. Он загружается динамически, поэтому я использую селен. Это то, что я до сих пор:
Import modules
from selenium import webdriver
from pandas import DataFrame
import xlwt
#List of team names that are consistent across bookmakers
NRL = ["Roosters","Broncos","Warriors","Storm","Eels","Dragons","Rabbitohs","Tigers","Bulldogs","Panthers",\
"Raiders","Cowboys","Sea Eagles","Sharks","Knights","Titans"]
#Unibet
driver = webdriver.Chrome()
driver.get("https://www.unibet.com.au/betting#filter/rugby_league")
unibetodds = driver.find_element_by_id("KambiBC").text
#Print results
print unibetodds
#Exit the driver
driver.quit()
Запуск этого кода дает
Live & Upcoming
Outrights
All Rugby League
Live
Right Now
1
Popular
League
Win
NRL
Sun
2:00 pm
Canterbury Bulldogs
Melbourne Storm
Live
+139
Canterbury Bulldogs
3.75
Melbourne Storm
1.28
Sun
4:05 pm
St. George Illawarra Dragons
Cronulla Sharks
Live
+139
St. George Illawarra Dragons
1.86
Cronulla Sharks
1.94
A-Z
Australia
NSW Cup
Sun
11:15 am
Canterbury Bulldogs Reserves
Mount Pritchard Mounties
+4
Canterbury Bulldogs Reserves
2.32
Mount Pritchard Mounties
1.58
Sun
1:10 pm
South Sydney Rabbitohs Reserves
Western Suburbs Magpies
+4
South Sydney Rabbitohs Reserves
1.55
Western Suburbs Magpies
2.40
Sun
1:50 pm
St. George Illawarra Dragons Reserves
Newtown Jets
+4
St. George Illawarra Dragons Reserves
1.33
Newtown Jets
3.20
Sun
3:00 pm
Wentworthville Magpies
Penrith Panthers Reserves
+4
Wentworthville Magpies
1.90
Penrith Panthers Reserves
1.90
QLD Cup
Sun
1:10 pm
Norths Devils
Wynnum Manly Seagulls
+4
Norths Devils
2.30
Wynnum Manly Seagulls
1.60
Sun
3:00 pm
Papua New Guinea Hunters
Souths Logan Magpies
+4
Papua New Guinea Hunters
2.45
Souths Logan Magpies
1.53
State of Origin
1
Super League
6
ODDS FORMAT
Decimal
Fractional
American
Terms and Conditions
Что явно грязно и несет много мусора. При попытке отфильтровать результаты, используя этот ответ , мне нужно иметь массив команд NRL
, на которые ссылаются, и при совпадении вывести соответствующие шансы.
team_matches = []
for x in NRL:
if x in unibetodds and x not in team_matches:
team_matches.append(x)
print team_matches
Придает
['Storm', 'Dragons', 'Rabbitohs', 'Bulldogs', 'Panthers', 'Sharks']
Это нормально, но мне нужны связанные шансы этих команд на равных. Например:
St. Джордж Иллаварра Драконы
1,86
Cronulla Sharks
1,94
В идеале, у меня был бы массив имен команд и другой массив с их связанными коэффициентами, которые я мог бы затем распечатать, чтобы добиться успеха. Так это может выглядеть так:
['Team 1', 'Team 2', 'Team 3',...,'nth team']
['Team 1 odds','Team 2 odds','Team 3 Odds',...,'nth team odds']
Какие-нибудь рекомендации, чтобы этот код был немного дальше?