webdriver提供了浏览器前进和后退操作,但没有提供页面的滚动操作,因此可以借助javascript来控制滚动条的移动。WebDriver提供了execute_script()方法来执行JavaScript代码

    1. '''
    2. 以慕课网的查找文章为例
    3. '''
    4. driver = webdriver.Chrome()
    5. driver.get('http://www.imooc.com/article/ai')
    6. time.sleep(2)
    7. # 滑动到页面底部
    8. js = 'document.documentElement.scrollTop=100000;'
    9. t = True
    10. # 一边滑动一边查找符合条件的文章,找到后点击进入文章详情
    11. while t:
    12. element_list = driver.find_elements_by_class_name('article-lwrap')
    13. for element in element_list:
    14. article = element.find_element_by_tag_name('p')
    15. text = article.text
    16. if text in 'MongoDB导入导出备份恢复实践':
    17. article.click()
    18. t = False
    19. time.sleep(3)
    20. driver.execute_script(js)
    21. driver.quit()