我正在编写一个脚本,使用Selenium RC for python自动填充表单。其中一个输入字段有一个AJAX预输入估算器,可在您键入时生成建议的下拉列表。我想选择第一个选项,但由于没有动态生成列表的HTML表示,我尝试模拟按“Enter”,模拟鼠标点击菜单,并将焦点移动到另一个元素,所有它在浏览器上手动工作(并导致在页面上生成新信息的自动保存)。但是,当我在Selenium服务器上运行以下代码时,下拉菜单固执地停留在那里并且没有选择/自动保存/更新:
sel.focus('otherelement')
sel.key_press('element', '\13') # As far as I know, 13 is the keycode for the "Enter" key
sel.key_press_native('\13') # I also tried 'KeyEvent.VK_ENTER' since that is apparently the keycode for a java.awt.event.KeyEvent
sel.click('title')
sel.mouse_out('element')
sel.mouse_down_at('element', '10,20')
sel.mouse_up_at('element', '10,20')
所有这些都是单独和集体测试,但无济于事。有人有任何更正/建议吗?
编辑:以下是我正在测试的网站(解决方案可能因网站而异):
sel.mouse_down('element')
sel.mouse_up('element')
答案 0 :(得分:0)
使用我在谷歌页面上尝试的以下代码
sel = self.selenium
sel.open("http://www.google.co.in/")
sel.type_keys("q", "vi")
time.sleep(2)
sel.key_down("q", "\\40")
sel.key_up("q", "\\40")
sel.key_press("q", "\\13")