В документации не нашел вызова с 3 аргументами, попробуйте следующее:
buttons = driver.find_elements('css selector', '#live-table > div.filters > div.calendarCont > div > button.calendar__navigation.calendar__navigation--tomorrow')
или с использование By.CSS_SELECTOR
:
from selenium.webdriver.common.by import By
buttons = driver.find_elements(By.CSS_SELECTOR, '#live-table > div.filters > div.calendarCont > div > button.calendar__navigation.calendar__navigation--tomorrow')
Кнопка нажимается путем JS
в консоли (F12 - dev tools) без мыши:
document.querySelector('#live-table > div.filters > div.calendarCont > div > button.calendar__navigation.calendar__navigation--tomorrow').click()
так что и в Python не должно быть вопросов.
В дополнению к ответу хочу сказать что по-видимому кнопка на сайте одна поэтому делать for нет смысла как и искать кнопки.
Таким образом код можно переписать как-то так:
driver.get("https://www.soccer24.com/")
button = driver.find_element('css selector', '#live-table > div.filters > div.calendarCont > div > button.calendar__navigation.calendar__navigation--tomorrow')
button.Click()
Еще заметил у Вас разрыв между button.
и Click()
мне кажется Python должен на такое ругаться.
Обновление ответа
При тестировании кода на Cелениуме
выяснилось что элемент не найден. Пришла идея дождаться его появления на страницы, после того как исчезнут скелетоны
- те самые пустые квадратики, которые отображают где появятся элементы, что я и делаю в данном решении.
Необходимы дополнительные импорты:
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
Код:
driver.get("https://www.soccer24.com/")
selector = f'''#live-table >
div.filters >
div.calendarCont > div >
button.calendar__navigation.calendar__navigation--tomorrow'''
try:
button = WebDriverWait(driver, 30).until(
EC.presence_of_element_located((By.CSS_SELECTOR, selector))
)
finally:
pass
if (button):
button.click()
sleep(100)
driver.quit()
Демонстрация работы скрипта, видео укорочено для того чтобы быть возможным опубликованным тут.
