selenium控制鼠标下滑

本文介绍如何使用Selenium处理网页异步加载数据,通过自动下滑操作获取全部内容。针对不同类型的网页,提供了具体代码示例,如无异步加载的CSDN博客与异步加载的华为市场网页。

前言

分两种情况

  1. 当前页面没有异步加载的数据,直接下滑到页面底部
  2. 异步加载的情况,下滑到某个程度就会触发新的数据,然后当前页面会显示出新出来的数据,此时就又需要下滑才能看到后面出来的新数据

无异步加载

比如我的csdn博客,下滑到底部都没有新的数据刷新
下方图片中的网址
在这里插入图片描述

有异步加载

CSND首页的第三个版块,下载版块
下方图片中的网址
在这里插入图片描述
上方图片是刚开始的数据展示
当我下滑到一定程度时,数据新增了,如下方图片
下方图片的下拉框对比上方图片的下拉框
可以看出来下拉框变小了,说明数据变多了
在这里插入图片描述
继续下滑,可以发现下拉框越变越小,说明新增的数据越来越多了
在这里插入图片描述
这就是异步加载



使用selenium实现下滑操作

华为市场为例
此网页就属于异步加载的情况
那么我们就需要多次下滑

代码

代码其实很简单

from time import sleep
from selenium import webdriver


driver = webdriver.Chrome()
# 华为市场的url
huawei_url = "https://appgallery1.huawei.com/#/Apps"
driver.get(huawei_url)
sleep(2)

# 一共下滑十次,下滑一次停顿0.5s
for i in range(10):
    driver.execute_script('window.scrollTo(0,document.body.scrollHeight)')
    sleep(0.5)


补充

对于一般网页而言(即无异步加载的网页),下方代码

# 下滑一次
driver.execute_script('window.scrollTo(0,document.body.scrollHeight)')

是直接下滑到网页的底部

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值