未知错误:不支持的定位器策略:通过

时间:2018-06-14 19:22:58

标签: python selenium

我正在尝试使用selenium和python,并在尝试使用webdriver.expectedConditions类时遇到问题。

以下代码摘自几个类,但包含所有必需的代码:

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

def isVisible(self, driver, HOW, WHAT, timeout=2):
    locator=(HOW,WHAT)
    try:
        WebDriverWait(driver, timeout).until(EC.visibility_of_element_located(locator))
        return True
    except TimeoutException:
        return False

newApplicationXpath = "//input[@value='New']"
self.assertTrue(self.isVisible(self.driver, "By.XPATH",     newApplicationXpath, 120))

回溯:

  

WebDriverException:消息:未知错误:不支持的定位器策略:按     (会议信息:chrome = 66.0.3359.139)     (驱动程序信息:chromedriver = 2.37.544315(730aa6a5fdba159ac9f4c1e8cbc59bf1b5ce12b7),platform = Linux 4.1.12-112.14.10.el7uek.bug27766149.x86_64 x86_64)

1 个答案:

答案 0 :(得分:2)

没有更多的代码(你提供的样本非常不完整),我将假设你的错误是因为你将“By.XPATH”作为一个字符串传递,而不是{{1 }}。将代码的最后一行更改为:

By.XPATH