有没有一种方法可以使用 selenium 和 PYTHON 在网页中向上滚动特定的 div 元素?

Is there a way to scroll up a particular div element in a webpage using selenium with PYTHON?

我可以向下或向上滚动整个网页,但我无法滚动网页中的特定 div 元素

问题是当我打开像 whatsapp web 这样的网页并在包含消息的特定聊天中(这是特定的 div 元素)时,我想从聊天开始抓取所有消息,但我只能抓取视图中的消息(最后几条消息),所以我想将该特定 div 元素滚动到聊天顶部以抓取所有消息。 有人可以在 PYTHON 帮我解决这个问题吗? 谢谢。

有可能。
假设您需要在里面滚动的元素是 div_el,它的定位器是 xpath_locator 代码将是这样的:

div_locator = "xpath_locator"
div_el = driver.find_element_by_xpath(div_locator)
driver.execute_script("arguments[0].scrollTop = arguments[0].scrollHeight", div_el)

查看更多

是的,您可以通过多种方式滚动到特定元素

通过使用 move_to_element()

 element = driver.find_element_by_xpath("_element_")

 action = ActionChains(driver)
 action.move_to_element(element).perform()

通过 scrollIntoView()

 element = driver.find_element_by_xpath("_element_")
 driver.execute_script("arguments[0].scrollIntoView(true);", element)

供参考 here