[ Foro de Python ]

el objeto webdriver no tiene el atributo find_element_by_xpath

16-Jan-2023 04:02
Invitado (eduardorwer44)
1 Respuestas

que tal tengo un problema con este codigo, tengo entendido que selenium cambio el metodo pero no he encontrado la manera de hacerlo:

from selenium import webdriver
from selenium.webdriver.support.ui import Select
import pandas as pd
import time


website = 'https://www.adamchoi.co.uk/teamgoals/detailed'
path = r'C:\Users\eduar\Desktop\PYTHON\chromedriver.exe'


driver = webdriver.Chrome(path)

driver.get(website)


all_matches_button = driver.find_element_by_xpath('//label[@analytics-event="All matches"]')

all_matches_button.click()


16-Mar-2023 22:13
Invitado (Alejandro Andrade)

El error "el objeto webdriver no tiene el atributo find_element_by_xpath" generalmente ocurre cuando la versión de Selenium que estás usando no es compatible con la forma en que estás llamando a los métodos.

En las versiones más recientes de Selenium, 'find_element_by_xpath' se ha movido a 'find_element', que es el método principal para encontrar elementos en la página.

Para solucionar el problema, intenta cambiar 'find_element_by_xpath' a 'find_element' en tu código:

all_matches_button = driver.find_element(By.XPATH, '//label[@analytics-event="All matches"]')

all_matches_button.click()

También necesitas importar 'By' de 'selenium.webdriver.common.by'.

Espero que esto te ayude.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)