Javascript 我需要selenium选中一个框,但我可以';不要检查它
我需要勾选一个方框,但我不能勾选。当我输入Xpath时,它只单击文本中的超链接(如图2所示)。有一些背景知识,我用Selenium Python编写脚本,我对编码是新手 我不知道复选框本身的元素叫什么,但我想复选框是一条紫色的线,上面写着:“before”。我觉得我已经尝试了所有可能的方法来编写代码 如果需要更多的信息,请询问 试试这个Javascript 我需要selenium选中一个框,但我可以';不要检查它,javascript,python,html,selenium,selenium-webdriver,Javascript,Python,Html,Selenium,Selenium Webdriver,我需要勾选一个方框,但我不能勾选。当我输入Xpath时,它只单击文本中的超链接(如图2所示)。有一些背景知识,我用Selenium Python编写脚本,我对编码是新手 我不知道复选框本身的元素叫什么,但我想复选框是一条紫色的线,上面写着:“before”。我觉得我已经尝试了所有可能的方法来编写代码 如果需要更多的信息,请询问 试试这个 driver.find_element_by_xpath(".//input[@id='denmark.agreeToTerms']")
driver.find_element_by_xpath(".//input[@id='denmark.agreeToTerms']").click()
您没有显示正在使用的定位器。
无论如何,我猜复选框的正确定位符是以下XPath
//input[@id='denmark.agreeToTerms']
如果您更喜欢css\u选择器
-
input#denmark.agreeToTerms
对于复选框,请单击标签标签。在代码段中或作为代码添加html代码。这很难猜测。另外,至少添加一个您尝试使用的xpath。它单击文本,而不是复选框,我已经尝试过。如果我通过xpath找到它,我已经尝试过不同的定位器,或者它单击它分组的文本而不是复选框的任何其他定位器。可能您提供了错误的HTML。如果您提供指向网页的链接就更好了,因为我知道如何通过Xpath单击它,正如前面解释的那样,它会单击它所分组的文本,而不是复选框。我不能得到复选框本身的XPath,只有文本和复选框一起,当你尝试点击它们一起时,点击它们中间的两个,这是一个超链接,而不是复选框。如果你看第一张图片,突出显示的紫色文本是实际的复选框,我找不到定位实际紫色文本的定位器,因为它没有Xpath、类或id。
driver.find_element_by_xpath("//label[@for='denmark.agreeToTerms']").click()