url = correct_url(url)
browser = webdriver.Chrome()
browser.get(url)
browser.find_element_by_xpath('//*[@title="New chat"]').click()
drawer_body = browser.find_elements_by_class_name('drawer-body')
browser.execute_script('arguments[0].scrollTop = arguments[0].scrollHeight', drawer_body)
获取'div'元素,它有一个列表并将滚动
drawer_body = browser.find_elements_by_class_name('drawer-body')
下面一行滚动非常快并到达底部,但这不会加载数据。有什么方法可以慢慢滚动到drawer_body元素吗?。
browser.execute_script('arguments [0] .scrollTop = arguments [0] .scrollHeight',drawer_body)
我正在尝试使用python和selenium实现以下脚本。 http://ctrlq.org/code/19966-whatsapp-phone-numbers
答案 0 :(得分:2)
大多数浏览器都支持空格键键作为向下滚动页面的键盘快捷键。使用此功能,您可以执行以下操作:
还有一个提示:为避免陷入永久循环,您需要检查新加载的数据是否与按空格键之前的数据不同,否则脚本应该退出,因为没有要解析的新数据。
答案 1 :(得分:0)
试试这个
drawer_body = browser.find_elements_by_class_name('drawer-body')
location = drawer-body.location
for i in range(location['x']//500):
browser.execute_script('window.scrollBy(0, 500)')