使用Python发送密钥控制+ Shift +单击Selenium

时间:2017-09-15 13:26:23

标签: python selenium

我想在列表中选择前100个元素,因此我使用了操作链方法。 如果有的话,请建议任何其他方法。使用下面使用的代码,我可以在列表中选择元素,但我无法单击任何元素:

for r in range(1, 100):
    r = str(r)
    print r
    row = GlobalVar.Driver.find_element_by_xpath("/html/body/table/tbody/tr[2]/td/table/tbody/tr[2]/td/div/div[3]/table/tbody/tr[2]/td/table/tbody/tr/td[1]/table/tbody/tr[2]/td/select/option["+r+"]")
    action_chains = ActionChains(GlobalVar.Driver)
    action_chains.key_down(Keys.CONTROL).key_down(Keys.SHIFT).click(row).key_up(Keys.SHIFT).key_up(Keys.CONTROL).perform()

Screenshot

1 个答案:

答案 0 :(得分:0)

这是一个select标签,你可以在python中使用select类。

ele = GlobalVar.Driver.find_element_by_xpath("/html/body/table/tbody/tr[2]/td/table/tbody/tr[2]/td/div/div[3]/table/tbody/tr[2]/td/table/tbody/tr/td[1]/table/tbody/tr[2]/td/select")

select = Select(ele)

for index in range(1, 100):
    select.select_by_index(index)

不建议使用绝对xpath。如果可能,请尝试使用相对路径或其他定位器类型。