我有一个与按钮相对应的元素(确切地说是Bing搜索按钮),它响应并正常工作:
button.send_keys(Keys.RETURN)
但是当我尝试时:
button.click()
它让我回来" \' \' undefined \'不是一个对象"。有人可以提供和解释吗?如果它是相关的,我使用PhantomJS作为浏览器,我将文本输入搜索字段。
我的代码在我的Mac上完美运行,但它现在不能在我的Ubuntu服务器上运行。这可能很重要。
导致问题的原因是,当您在Bing搜索栏中输入文本时,栏会展开,按钮会向右移动相当大的数量。仍然,为什么在发送返回键时,click方法不起作用?
答案 0 :(得分:2)
有时可能会发生。 尝试:
检查选择器!也许其他元素具有相同的类(例如),但是您使用find_element_by_class_name
,它为SINGLETON元素分叉。检查追溯以获取更多信息。
AJAX问题。有些网站使用了大量的JS,需要时间来处理请求甚至点击因某些原因无效。
由于上一个问题,请尝试使用JavaScript点击元素。如果可能,请尝试使用driver.execute_script()
方法。