繁体   English   中英

无法在 Python 中使用 xpath 定位元素

[英]Unable to Locate element using xpath in Python

我是 Python 新手,我的代码有问题。 我正在尝试通过 xpath 使用 Selenium 进行网页抓取,但是当我运行我的代码时,它显示了一个错误,例如"Unable to Locate element using: {"method":"xpath","selector":"//*[@id="T1"]"} 。尝试使用 ID 和 Name 作为元素,但仍然无法正常工作。

这是我的代码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from getpass import getpass
import time
    
username1 = input("Username:")
username2 = input("Username2:")
password = getpass("Password")
stock = input("Stock Name:")
   
driver = webdriver.Chrome("")
driver.get("")
   
time.sleep(10)
username_textbox = driver.find_element_by_name("txtUser1")
username_textbox.send_keys('username1')
   
username1_textbox = driver.find_element_by_name("txtUser2")
username1_textbox.send_keys('username2')
    
password_textbox = driver.find_element_by_name("txtPassword")
password_textbox.send_keys('password')
password_textbox.send_keys(Keys.RETURN)
    
time.sleep(10)
    
search = driver.find_element_by_xpath('//*[@id="T1"]')
search.send_keys('stock')
search.send_keys(Keys.RETURN)

来自站点检查视图的元素。

<input type="text" id="T1" name="T1" onkeypress="if (event.keyCode == 13) {document.getElementById('B1').click()}" size="8" value="" style="font-family: Helvetica; font-size: 8pt; color: #424542">"

错误消息selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id="T1"]"} (Session info: chrome=84.0.4147.135)

也许尝试等待网站加载。 下面的代码取自selenium python docs

from selenium import webdriver
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.Firefox()
driver.get("http://somedomain/url_that_delays_loading")
try:
    element = WebDriverWait(driver, 10).until(
        EC.presence_of_element_located((By.XPATH, "//*[@id="T1"]"))
    )
finally:
    driver.quit()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM