Не удается найти элемент с помощью селектора CSS с Selenium на Python

1

Я запускаю скрипт на vodafone.co.uk, но я не могу найти какой-либо элемент с помощью CSS Selector.

browser.get("http://freesim.vodafone.co.uk/")
 browser.find_element_by_css_selector("#frmNew > div:nth-child(32) > div > div > div > div.freesim-text-last.last > button > span").click()

И это то, что я получаю:

NoSuchElementException: Message: Unable to locate element

Не оценивает, какой CSS я использую, selenium не находит никакого элемента в любом случае. Спасибо.

Теги:
selenium

1 ответ

0
Лучший ответ

Поскольку вы не упомянули, с каким элементом вы хотите взаимодействовать с ним.

Я vodafone.co.uk на широкополосную ссылку на vodafone.co.uk.

Код:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC 

driver = webdriver.Chrome(executable_path = r'D:/Automation/chromedriver.exe')
driver.get("http://freesim.vodafone.co.uk/")

broad_band = WebDriverWait(driver, 10).until(
EC.element_to_be_clickable((By.CSS_SELECTOR, "a[href='https://www.vodafone.co.uk/broadband/index.htm'] button"))) 

broad_band.click()  

Вы можете написать то же самое для своего веб-элемента.

button = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "#frmNew > div:nth-child(32) > div > div > div > div.freesim-text-last.last > button > span")))  
button.click()
  • 0
    @Beter: Не могли бы вы дать обновление об этом?
  • 0
    Извините за поздний ответ. Мне удалось решить эту проблему, найдя элемент после смены кадра
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню