Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ## Подключение библиотек веб-драйвера, времени, парсинга
- from selenium.common.exceptions import NoSuchElementException
- from selenium.webdriver.chrome.options import Options
- from selenium import webdriver
- import datetime
- import time
- from bs4 import BeautifulSoup
- ## Выставление опций для запуска веб-драйвера
- chrome_options = Options()
- # Опции которые запускают браузер в консольном режиме(без окон)
- # chrome_options.add_argument("--headless")
- # chrome_options.add_argument("--disable-gpu")
- service_log_path = "chromedriver.log"
- # service_args = ['--verbose']
- ## Инициализация драйвера
- driver = webdriver.Chrome('chromedriver',
- chrome_options=chrome_options,
- service_log_path=service_log_path)
- ## Открытие страницы
- driver.get('https://www.leon.ru/stavki-live')
- ## Подождать до загрузки
- time.sleep(5)
- label = 'leon'
- result = []
- ## Скопировать DOM страницы в нашу переменную page
- page = driver.page_source
- ## Закрыть драйвер
- driver.quit()
- soup = BeautifulSoup(page, 'html.parser')
- h_rates_list = []
- h_rates = soup.find("table", {"id" : 'theSportsTable'}).find("tbody").find("tr").findAll("th", {"class" : 'text-center'})
- if len(h_rates):
- for h_rate in h_rates:
- h_rates_list.append(h_rate.text)
- champs = soup.find("div", {"class" : 'main'}).find("table", {"id" : 'theSportsTable'}).find("tbody").findAll("tr")[1:]
- if len(champs):
- for event in champs:
- teams = event.find("td", {"class" : 'custmatchestd'}).find("b", {"class" : 'liveeventTeam'}).text
- sport_name = event.find("td", {"class" : 'custmatchestd'}).find("span", {"class" : 'smallgrey liveeventLeague'}).text.split(" -")[0]
- league_name = event.find("td", {"class" : 'custmatchestd'}).find("span", {"class" : 'smallgrey liveeventLeague'}).text.split(" -",1)[1]
- event_bets = event.findAll("div", {"class" : 'val'})
- event_bets_dict = {}
- if event_bets:
- for i in range(3):
- event_bets_dict[h_rates_list[i]] = event_bets[i].text
- print(sport_name, teams, event_bets_dict)
- else:
- continue
- # match = {} #Создали словарь под всё событие
- # events = champ.findAll("div", {"class" : 'c-events__item_col'}) #Нашли все события в чемпионате
- # if len(events):
- # for event in events:
- # teams = event.find("div", {"class" : 'c-events__item'}).find("a", {"class" : 'c-events__name'}).find("span", {"class" : 'c-events__teams'}).get("title") #Нашли названия команд в событии
- # event_bets = event.find("div", {"class" : 'c-bets'}).findAll("a")
- # event_bets_dict = {}
- # for index, event_bet in enumerate(event_bets):
- # event_bets_dict[h_rates_list[index]] = event_bet.text
- # match["КФ"] = event_bets_dict
- # match["Вид спорта"] = sport_name
- # match["Лига"] = league_name
- # match["Команды"] = teams
- # print(match)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement