Selenium python选择单击(“css=输入.smthg")?

2024-10-03 09:20:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用Python为Selenium编写脚本,但是选择单击当CSS不能工作时:

def test_test_remote(self):
    sel = self.selenium
    sel.open("/fr")
    sel.click("id=flightFrom")
    sel.type("id=flightFrom", "Londres-Stansted")
    sel.type("id=flightTo", "Dublin")
    sel.click("id=termsAccept")
    sel.click("css=input.bookFlightButton") ----> nothing happens
    sel.wait_for_page_to_load("30000")

有人有主意吗?在

敬上。在

文森特


Tags: testself脚本idremotedeftypeselenium
1条回答
网友
1楼 · 发布于 2024-10-03 09:20:28

这很可能是由幕后的Javascript代码造成的。可能当你用浏览器浏览网站时,你只需点击元素,一切都如预期的那样工作。假设input.bookFlightButton实际上在其mouseup处理程序上处理提交请求,例如,click命令可能会失败。在

我会尝试两件事。首先,检查是否不能使用Selenium的Submit Form命令提交表单。运气好的话,这会给你想要的结果。在

另一方面,您需要稍微插入Javascript。如果站点碰巧使用jQuery,在浏览器中启动一个命令窗口(Chrome默认有这个命令窗口;对于Firefox,你需要Firebug,即。。。不知道)。然后尝试使用jQuery切换表单提交:

$('input.bookFlightButton').click()
$('input.bookFlightButton').mouseup()

找到有效的调用后,将该按钮上的sel.click替换为以下行中的内容:

^{pr2}$

…从硒中切换。在

相关问题 更多 >