当前位置: 首页 > wzjs >正文

东莞网站搭建哪家强营销网站建设规划

东莞网站搭建哪家强,营销网站建设规划,教育培训的网站建设,做牙网站最近在弄selenium的爬取的过程中,我发现一些网站上的表格,是需要手动拉到底部才能加载完成的。 如果没有拉到底部,那么在获取网页表格的时候,表格就会只有显示的一部分,页面就不完整。 所以我就整理了一些模拟滚动鼠…

最近在弄selenium的爬取的过程中,我发现一些网站上的表格,是需要手动拉到底部才能加载完成的。

如果没有拉到底部,那么在获取网页表格的时候,表格就会只有显示的一部分,页面就不完整。

所以我就整理了一些模拟滚动鼠标,加载到页面底部的方法。用于处理这个问题~

以下是几种常见的方法,个人是用的最多的是第一种,如果不好用的话,可以用后面几种。

1. 使用Selenium库

Selenium是一个强大的自动化测试工具,可以用来模拟浏览器操作,包括滚动页面。以下是一个使用Selenium模拟滚动页面的示例:

from selenium import webdriver
import time# 创建一个Chrome浏览器实例
driver = webdriver.Chrome()# 打开目标网页
driver.get('https://example.com')# 获取页面的总高度
last_height = driver.execute_script("return document.body.scrollHeight")while True:# 滚动到页面底部driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")# 等待新内容加载time.sleep(2)# 获取新的页面高度new_height = driver.execute_script("return document.body.scrollHeight")# 如果页面高度没有变化,说明已经到底部if new_height == last_height:breaklast_height = new_height# 关闭浏览器
driver.quit()

在这个示例中,我们首先创建了一个Chrome浏览器实例,然后打开目标网页。接着,我们使用一个while循环来滚动页面到底部,并每次滚动后等待新内容加载。如果新的页面高度与之前的相同,就结束循环,表示已经到达页面底部。最后,我们关闭了浏览器。

2. 使用PyAutoGUI库

PyAutoGUI是一个跨平台的GUI自动化库,可以用来模拟鼠标和键盘操作。以下是一个使用PyAutoGUI模拟鼠标滚动的示例:

import pyautogui
import time# 获取屏幕尺寸
screen_width, screen_height = pyautogui.size()# 移动鼠标到屏幕中央
pyautogui.moveTo(screen_width / 2, screen_height / 2)# 模拟鼠标滚轮滚动
for i in range(10):  # 滚动10次pyautogui.scroll(-100)  # 向下滚动100单位time.sleep(1)  # 每次滚动后暂停1秒

这个的逻辑是,先获取屏幕尺寸,然后将鼠标移动到屏幕中央。接着,我们使用一个for循环来模拟鼠标滚轮滚动,每次向下滚动100单位,并在每次滚动后暂停1秒。

3. 使用Pynput库

Pynput是一个用于控制和监视输入设备(如鼠标和键盘)的Python库。以下是一个使用Pynput模拟鼠标滚动的示例:

from pynput.mouse import Controller
import time# 创建鼠标控制器
mouse = Controller()# 移动鼠标到屏幕中央
mouse.position = (screen_width / 2, screen_height / 2)# 模拟鼠标滚轮滚动
for i in range(10):  # 滚动10次mouse.scroll(0, -2)  # 向下滚动2单位time.sleep(1)  # 每次滚动后暂停1秒

在上面的代码中,我们首先创建了一个鼠标控制器,然后将鼠标移动到屏幕中央。

接着,我们使用一个for循环来模拟鼠标滚轮滚动,每次向下滚动2单位,并在每次滚动后暂停1秒。

4. 使用ActionChains类

Selenium的ActionChains类可以用来模拟复杂的用户操作,包括鼠标拖动和滚动。以下是一个使用ActionChains类模拟滚动页面的示例:

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
import time# 创建一个Chrome浏览器实例
driver = webdriver.Chrome()# 打开目标网页
driver.get('https://example.com')# 创建ActionChains对象
action = ActionChains(driver)# 模拟鼠标滚动
for i in range(10):  # 滚动10次action.move_by_offset(0, 500).perform()  # 向下滚动500像素time.sleep(1)  # 每次滚动后暂停1秒# 关闭浏览器
driver.quit()

这段代码中,我们首先创建了一个Chrome浏览器实例,然后打开目标网页。

接着,我们创建了一个ActionChains对象,并使用一个for循环来模拟鼠标滚动,每次向下滚动500像素,并在每次滚动后暂停1秒。最后,我们关闭了浏览器。

后面两种方法是模拟了鼠标操作,比较不容易被监测为爬虫,点击也方便。

总结

以上是几种在Python中根据页面长度模拟滚动鼠标的操作方法。

如果需要其他类型的鼠标滚动方法,可以参考:
【Python】Selenium模拟滚动鼠标的各种示例(一口气滚动到网页底部、逐步滚动、滚动到某个元素可见,按照次数滚动)

在这里插入图片描述

http://www.dtcms.com/wzjs/2855.html

相关文章:

  • 千享科技网站建设seo推广优化排名软件
  • 电商网站建设公司3322免费域名注册
  • 网站建设首选唯美谷宣传推广
  • 企业网站管理系统排名站内优化
  • 做网站和软件有区别吗安徽做网站公司哪家好
  • 佛山网站建设官网公司网站建设
  • 网站估值怎么做疫情防控最新通告
  • 个人网站涉及企业内容香港疫情最新消息
  • 在网上做网站站长工具友链检测
  • 网站开发类论文网站流量排行
  • 企业查询软件哪个好站长工具seo综合查询可以访问
  • 手机网站做指向关键词上首页的有效方法
  • 怎么接推广seo优化报价公司
  • 龙华做棋牌网站建设哪家便宜seo优化论坛
  • 门头广告设计图片网站seo入门基础教程书籍
  • 公司网站域名在哪里备案开网店怎么开 新手无货源
  • 绍兴市越城区建设局网站宁波seo网站
  • 做好网站建设和运营整合营销经典案例
  • 安徽动漫公司 网站制作 安徽网新友情链接怎么互换
  • 珠海市网站建设企业百度电视剧风云榜
  • 嘉善公司网站建设联系人滨州seo排名
  • 做网站接私活怎么收费搜索引擎下载
  • 政府门户网站建设报价搜索引擎优化指南
  • 网站可以做二维码吗福州网seo
  • 如何做公司的网站建设怎么下载有风险的软件
  • 网站的注册和登录界面怎么做站长之家怎么用
  • 湘潭自助建站系统什么是营销模式
  • 三站合一网站建设seo是什么公司
  • wordpress安装无法链接数据库文件aso优化师主要是干嘛的
  • 佛山 建站公司seo效果分析