Selenium with Python - 如何在动态Javascript表单上找到元素?

时间:2013-09-29 08:58:52

标签: python-2.7 selenium selenium-webdriver

我正在尝试在http://matrix.itasoftware.com/上自动搜索,而我无法在我计划使用的字段上找到元素 - 网站使用的表单是通过Javascript AFAIK生成的。我被困在第一个字段上:在“多城市”选项卡下,在“航班1”下的“离开”字段中。

使用Selenium IDE,我设法找到这个特定字段的ID:ita_form_multislice_MultiSliceRow_0_origin,但测试它会返回错误“NoSuchElementException”。

我的代码:

flight1_origin = driver.find_element_by_id("ita_form_multislice_MultiSliceRow_0_origin")

网站通过Javascript生成表单,因此很难通过正常方式找到实际ID和所有内容。任何想法的家伙?

1 个答案:

答案 0 :(得分:0)

我的猜测是你不在标签上。在单击选项卡之前,该元素实际上不会附加到DOM。

在尝试查找离开字段之前,将其添加到脚本中。

driver.find_element_by_id("ita_layout_TabContainer_0_tablist_ita_form_multislice_MultiSliceForm_0").click()