无法让 ActionChains 在函数中工作

Cannot get ActionChains to work inside a function

提问人:Northers 提问时间:11/23/2017 最后编辑:Northers 更新时间:11/24/2017 访问量:93

问:

请耐心等待,我是 Python 和 Webdriver 的新手,但我在函数内无法让 ActionChains 工作。

运行这个很好:-

wait.until(ec.presence_of_element_located((By.XPATH, "//*[@id='bulk-upload-patient-spreadsheet']/div[1]/div/div/div/table/tbody/tr[2]/td[1]"))).click()
actions = ActionChains(driver)
actions.send_keys("test")
actions.perform()

..但是运行它会导致错误:-

def test_function(self):
    wait = initialisation.wait_for(self.driver)
    self.driver = login.default_login(self.driver)
    wait.until(ec.presence_of_element_located((By.XPATH, "//*[@id='bulk-upload-patient-spreadsheet']/div[1]/div/div/div/table/tbody/tr[2]/td[1]"))).click()
    actions = ActionChains(self.driver)
    actions.send_keys("test")
    actions.perform()

我得到的错误是:-

AttributeError: 'NoneType' object has no attribute 'w3c'

任何帮助将不胜感激...

python google-chrome nonetype chrome-web-driver

评论

0赞 Northers 11/23/2017
我正在 Chrome 上进行测试,我刚刚注意到上面的代码在 Firefox 上运行良好,这是 Chrome 的问题吗?有解决方法吗?
0赞 Northers 11/27/2017
我发布的另一个问题已经回答了这一点。我在 test_function 中调用 login.default_login 函数,这没有返回语句,所以返回 None。我添加了一个 return 语句,现在它按预期工作。

答: 暂无答案