在Python Selenium中的特定DIV元素上滚动

在Python Selenium中的特定DIV元素上滚动,python,selenium,Python,Selenium,我正在尝试执行一个简单的Python Selenium自动化,脚本将单击一个链接,在页面顶部打开一个对话框(Instagram配置文件) 所述对话框将显示跟随者列表,但不幸的是,包含该列表的UL将仅显示前12个跟随者(或LI)。它由AJAX提供支持,可以“加载更多”追随者 无论如何,为了模拟加载更多追随者,我尝试了以下代码: driver.find_element_by_xpath('/html/body/div[3]/div/div[2]/ul').send_keys(Keys.END) 或

我正在尝试执行一个简单的Python Selenium自动化,脚本将单击一个链接,在页面顶部打开一个对话框(Instagram配置文件)

所述对话框将显示跟随者列表,但不幸的是,包含该列表的UL将仅显示前12个跟随者(或LI)。它由AJAX提供支持,可以“加载更多”追随者

无论如何,为了模拟加载更多追随者,我尝试了以下代码:

driver.find_element_by_xpath('/html/body/div[3]/div/div[2]/ul').send_keys(Keys.END)

不幸的是,它不起作用。我想知道是否有一种正确的方法可以做到这一点(向下滚动关注活动的div或任何页面元素)

下图显示了所述页面的html结构


感谢您在这方面的帮助,非常感谢

你能试试这样的吗?。这将滚动到您提到的div元素

Python代码

element = driver.find_element_by_xpath("xpath_of_div_element")
driver.execute_script("arguments[0].scrollIntoView(true);", element);
Java示例:

WebElement element = driver.findElement(By.id("id_of_div_element"));
((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(true);", element);

你能试试这样的吗?。这将滚动到您提到的div元素

Python代码

element = driver.find_element_by_xpath("xpath_of_div_element")
driver.execute_script("arguments[0].scrollIntoView(true);", element);
Java示例:

WebElement element = driver.findElement(By.id("id_of_div_element"));
((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(true);", element);

使用这个

liElement = driver.find_element_by_xpath("//div[@role='dialog']//ul//li[text()='required_li_element_visible_text']")
driver.execute_script("arguments[0].scrollIntoView(true);", liElement);

使用这个

liElement = driver.find_element_by_xpath("//div[@role='dialog']//ul//li[text()='required_li_element_visible_text']")
driver.execute_script("arguments[0].scrollIntoView(true);", liElement);

我得到了这个错误:raise exception_class(message,screen,stacktrace)selenium.common.exceptions.NoSuchElementException:message:没有这样的元素:找不到元素:{“method”:“xpath”,“selector”:”//div[@role='dialog']///ul li[text()='required_li_element_visible_text']>(会话信息:chrome=77.0.3865.90)没关系,修正了小问题。谢谢你的帮助,先生,祝你度过愉快的一天!我得到了这个错误:raise exception_class(message,screen,stacktrace)selenium.common.exceptions.NoSuchElementException:message:没有这样的元素:找不到元素:{“method”:“xpath”,“selector”:”//div[@role='dialog']///ul li[text()='required_li_element_visible_text']>(会话信息:chrome=77.0.3865.90)没关系,修正了小问题。谢谢你的帮助,先生,祝你度过愉快的一天!