Соскоб с селеном и печать выбранных данных в массив - PullRequest
0 голосов
/ 25 мая 2019

Я пытаюсь оценить шансы на ставки у производителя книг. Он загружается динамически, поэтому я использую селен. Это то, что я до сих пор:

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']

Какие-нибудь рекомендации, чтобы этот код был немного дальше?

...