webdriver提供了浏览器前进和后退操作,但没有提供页面的滚动操作,因此可以借助javascript来控制滚动条的移动。WebDriver提供了execute_script()方法来执行JavaScript代码
'''
以慕课网的查找文章为例
'''
driver = webdriver.Chrome()
driver.get('http://www.imooc.com/article/ai')
time.sleep(2)
# 滑动到页面底部
js = 'document.documentElement.scrollTop=100000;'
t = True
# 一边滑动一边查找符合条件的文章,找到后点击进入文章详情
while t:
element_list = driver.find_elements_by_class_name('article-lwrap')
for element in element_list:
article = element.find_element_by_tag_name('p')
text = article.text
if text in 'MongoDB导入导出备份恢复实践':
article.click()
t = False
time.sleep(3)
driver.execute_script(js)
driver.quit()