我一直在弄清楚如何获取变量以使用Selenium时遇到了麻烦。这篇文章似乎有所帮助(Variable在括号内不起作用),但我仍然无法使它起作用。
当我使用实际值时,它起作用。在这种情况下,阿拉巴马州。我创建了一个名为state的变量,以便可以在函数中调用它。我有13个州要经历。
driver.find_element_by_xpath("//option[@value='AL-Alabama']").click()
这使用状态变量,并在查看错误消息时将变量值显示为AL- Alabama。因此,似乎在引用网页中的正确值。不知道我缺少什么或为什么它不起作用。任何指导将不胜感激。
driver.find_element_by_xpath('//option[@value=' + state + ']').click() selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//option[@value=AL-Alabama]"}
值的编码方式中不包含该值的单引号。尝试:
driver.find_element_by_xpath("//option[@value='" + state + "']").click()