硒move_to_element()。perform()无法移动光标

时间:2019-01-03 17:04:27

标签: python selenium

the website i am using

我想使用硒来向下滚动此网页,但是该网站分为两个屏幕,左侧是结果列表,右侧是地图。

要从左侧向下滚动到底部,光标必须在结果区域内。

所以我在这里尝试了perform(),xpath指向结果之一,但是它不起作用:

hover = ActionChains(driver);
Elem_to_hover = driver.find_element_by_xpath("""//*[@id="js-map-search-result-list"]/li[1]/p/a/img""");
hover.move_to_element(Elem_to_hover);
hover.perform();

因此,当页面中有多个相同元素时,硒将无法使用perform()?

然后我尝试使用xpath指向结果显示区域,但仍然无法正常工作

hover = ActionChains(driver);
Elem_to_hover = driver.find_element_by_xpath("""//*[@id="js-map-search-result-list"]""");
hover.move_to_element(Elem_to_hover);
hover.perform();

1 个答案:

答案 0 :(得分:1)

您可以尝试

driver.findElement(By.id("js-item-count-upside")).click();
WebElement element = driver.findElement(By.xpath("//*[@id='js-map-search-result-list']/li[1]/p/a/img"));
driver.executeScript("arguments[0].scrollIntoView()", element);