Estou tentando assinar esta página do Reddit por meio de um botão de clique.
Abri a página no modo inspecionar, localizei o botão e copiei seu XPATH para o código abaixo. Mas o código está dizendo que não consegue encontrar o elemento.
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Select
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
URL = "https://www.reddit.com/r/learnjavascript"
driver = webdriver.Chrome()
driver.get(URL)
time.sleep(5)
driver.find_element(By.XPATH, "/div/faceplate-tracker").click()
driver.find_element(Por.XPATH, "/div/faceplate-tracker").click()
Problemas:
A expressão XPath está incorreta. Algumas referências abaixo para você ler e entender sobre XPaths.
O elemento alvo (botão "Join") está dentro de um elemento shadow root aninhado. Você precisa lidar com shadow roots primeiro antes de tentar interagir com o elemento alvo. Algumas referências abaixo para sua informação:
Verifique o código abaixo para clicar no botão "Participar":
Código modificado e aplicado esperas de selênio para localizar elementos efetivamente. Verifique o código abaixo: