I am new in Python and I am having problem with my Code. I am trying web scrape using Selenium by xpath, but when I run my code it shows an error such as "Unable to Locate element using: {"method":"xpath","selector":"//*[@id="T1"]"}
. Tried using ID and Name as the element, but still not working.
Here is my code:
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)
Element from Inspection View of the site.
<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">"
Error Message selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id="T1"]"} (Session info: chrome=84.0.4147.135)
Maybe try waiting for the website to load. The code below is taken from the 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()
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.