硒滚动弹出div内部

Rob*_*Rob 5 python selenium screen-scraping

我正在使用硒并尝试在instagram的弹出div中滚动。

我进入类似“ https://www.instagram.com/kimkardashian/ ” 的页面,单击关注者,然后我无法获得关注者列表向下滚动。

我尝试使用悬停,click_and_hold和其他一些技巧来选择div,但没有一个起作用。

最佳选择是什么?

这是我到目前为止尝试过的:

driver.find_elements_by_xpath("//*[contains(text(), 'followers')]")[0].click()
element_to_hover_over = driver.find_elements_by_xpath("//*[contains(text(), 'Follow')]")[12]
hover = ActionChains(webdriver).move_to_element(element_to_hover_over)
hover.click_and_hold()
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
Run Code Online (Sandbox Code Playgroud)

小智 11

确切的代码如下。您首先必须找到包含关注者名称的新 iframe:

scr1 = driver.find_element_by_xpath('/html/body/div[2]/div/div[2]/div/div[2]')
driver.execute_script("arguments[0].scrollTop = arguments[0].scrollHeight", scr1)
Run Code Online (Sandbox Code Playgroud)

这将自动向下滚动页面,但您已经为它创建了一个 for 循环,直到它到达页面末尾。你可以在这里看到我的 Instagram 爬虫。