*跟进** 我正在尝试使用 Selenium 在网站框中输入一个整数,但我在 send_keys 上遇到了无效的语法错误
Posted
技术标签:
【中文标题】*跟进** 我正在尝试使用 Selenium 在网站框中输入一个整数,但我在 send_keys 上遇到了无效的语法错误【英文标题】:*Follow up** I'm trying to input an integer into a website box using Selenium and I'm getting an invalid syntax error on the send_keys 【发布时间】:2022-01-19 06:05:23 【问题描述】:from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
#adds geckodriver script as selenium doesn't directly work with geckodiver anymore
ff = "C:\Python36\geckodriver-v0.30.0-win64\geckodriver.exe"
#opens website
browser = webdriver.Firefox(executable_path=ff)
browser.get('https://www.cookcountytreasurer.com/setsearchparameters.aspx')
wait = WebDriverWait(browser,30)
#PINs into website
elementID1 = wait.until(EC.element_to_be_clickable((By.XPATH("//input[@id='ContentPlaceHolder1_ASPxPanel1_SearchByPIN1_txtPIN1']")))
elementID1.send_keys("17")
然后 cmd 提示符会显示以下内容:
File "<stdin>", line2
elementID1.send_keys("17")
^
SyntaxError: invalid syntax
我不确定是什么导致了语法错误。进一步的帮助表示赞赏。我根据对原始问题的有用回复修复了原始代码中的问题,但我仍然在发送键上遇到语法错误。
【问题讨论】:
如果这是您正在运行的确切代码,您应该将findelement
更改为find_element
。此外,您的 xpath 似乎没有在检查中显示任何元素
还有,应该是By.XPATH
括号语法也不正确,包括@BibekjitSingh 建议的所有内容应该是browser.find_element(By.XPATH("//[@id='ContentPlaceHolder1_ASPxPanel1_SearchByPIN1_txtPIN1']")).click
谢谢大家的帮助!节日快乐!
能否附上原始问题的链接?
【参考方案1】:
如前所述,该行存在各种语法错误:
browser.findelement(By.xpath("//[@id='ContentPlaceHolder1_ASPxPanel1_SearchByPIN1_txtPIN1'])").click
应该是这样的:
browser.find_element(By.XPATH,"//input[@id='ContentPlaceHolder1_ASPxPanel1_SearchByPIN1_txtPIN1']").click()
最好应用一些等待。
# Imports Required:
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver.get("https://www.cookcountytreasurer.com/setsearchparameters.aspx")
wait = WebDriverWait(driver,30)
elementID1 = wait.until(EC.element_to_be_clickable((By.XPATH,"//input[@id='ContentPlaceHolder1_ASPxPanel1_SearchByPIN1_txtPIN1']")))
elementID1.send_keys("17")
【讨论】:
以上是关于*跟进** 我正在尝试使用 Selenium 在网站框中输入一个整数,但我在 send_keys 上遇到了无效的语法错误的主要内容,如果未能解决你的问题,请参考以下文章
我正在尝试使用selenium webdriver从Instagram中删除名称?
我究竟做错了啥?我正在尝试将 selenium 依赖项添加到 Intellij,但我不断收到错误
org.openqa.selenium.UnsupportedCommandException:使用Selenium找不到可变资源