Selenium Python执行JavaScript点击链接我收到一个错误。我认为我的语法错了

时间:2015-08-18 11:32:14

标签: javascript python-2.7 selenium selenium-webdriver

我正在尝试点击我们网页上的链接。该页面由GWT构建。 我在Selenium Python中使用JavaScript执行。

self.driver.execute_script("document.gElementById('tab_administration').click()")

运行我的代码时出现以下错误:

File "C:\Python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 181, in check_response
raise exception_class(message, screen, stacktrace)
WebDriverException: Message: JavaScript error

我的代码段是:

     def click_administration(self):
        time.sleep(10)
        #self.driver.find_element(By.ID, 'tab_administration').click()
        self.driver.execute_script("document.gElementById('tab_administration').click()")
        #wait = WebDriverWait(self.driver, 10)
        #element = wait.until(EC.element_to_be_clickable((By.ID, 'tab_administration')))
        #element.click()
        return AdministrationPage(self.driver)

我的JavaScript调用语法不正确吗?为什么会失败?

在Firefox开发工具中,它可以正常工作。在控制台窗口中,我输入以下代码行:

document.gElementById('tab_administration').click()";

我正在尝试使用driver.execute_script,因为当我尝试使用WebDriverWait(self.driver,10)时,我会遇到TimeOut异常。

一些帮助表示赞赏。感谢。

里亚兹

1 个答案:

答案 0 :(得分:2)

试试这个:

self.driver.execute_script("arguments[0].click()", yourElement);