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

【爬虫】通过模拟鼠标点击和键盘操作抓取网页数据

通过模拟鼠标点击,打开网页,然后屏幕截图,全选文字,并将文字保存到文本文件,翻页,逐步循环。

import os.pathimport pyautogui
import time
import pyperclipdef select_and_save_to_file(filename="selected_content.txt"):try:# 设置操作延迟,确保系统有足够时间响应pyautogui.PAUSE = 1# 执行Ctrl+A全选pyautogui.hotkey('ctrl', 'a')print("执行了全选操作")# 执行Ctrl+C复制选中内容pyautogui.hotkey('ctrl', 'c')print("执行了复制操作")# 等待剪贴板内容准备好time.sleep(0.5)# 从剪贴板获取内容content = pyperclip.paste()if not content:print("剪贴板中没有内容")return# 将内容写入文件with open(filename, 'w', encoding='utf-8') as f:f.write(content)print(f"成功将内容保存到 {filename}")except Exception as e:print(f"操作过程中出现错误: {str(e)}")list_cord = [461,499,537,577,618,656,693,734,773,811]
list_cord = [461,499,537]
# for page in range(1, 124):
page = 13
for idx, i in enumerate(list_cord):if os.path.exists(f'./save_data/page{page}_{idx+1}.jpg') and os.path.exists(f'./save_data/page{page}_{idx+1}.txt'):continue# 移动鼠标到指定位置pyautogui.moveTo(1830, i)  # x=100, y=150# 执行鼠标左键点击pyautogui.click()time.sleep(3)pyautogui.screenshot(f'./save_data/page{page}_{idx+1}.jpg')select_and_save_to_file(f'./save_data/page{page}_{idx+1}.txt')print(f'page{page}_{idx+1}抓取成功')pyautogui.moveTo(494, 19)  # x=100, y=150# 执行鼠标左键点击pyautogui.click()time.sleep(1)# break# pyautogui.moveTo(1324, 868)  # x=100, y=150# # 执行鼠标左键点击# pyautogui.click()# time.sleep(3)

http://www.dtcms.com/a/354530.html

相关文章:

  • 算法 --- 二分
  • 【深度学习新浪潮】显著性检测最新研究进展(2022-2025)
  • LeetCode 刷题【55. 跳跃游戏】
  • 用 PyTorch 搭建 CNN 实现 MNIST 手写数字识别
  • 如何开发线下陪玩儿小程序
  • 【图像处理基石】DCT在图像处理中的应用及实现
  • natapp 内网穿透
  • 【iOS】Masnory自动布局的简单学习
  • 图算法详解:最短路径、拓扑排序与关键路径
  • 使用 httpsok 工具全面排查网站安全配置
  • Nginx + Certbot配置 HTTPS / SSL 证书(简化版已测试)
  • Android稳定性问题的常见原因是什么
  • JSP程序设计之JSP指令
  • react+vite+ts 组件模板
  • CVPR2025丨VL2Lite:如何将巨型VLM的“知识”精炼后灌入轻量网络?这项蒸馏技术实现了任务专用的极致压缩
  • 传统星型拓扑结构的5G,WiFi无线通信网络与替代拓扑结构自组网
  • BGP路由协议(一):基本概念
  • UE的SimpleUDPTCPSocket插件使用
  • 百度地图+vue+flask+爬虫 推荐算法旅游大数据可视化系统Echarts mysql数据库 带沙箱支付+图像识别技术
  • 【数字黑洞2178】2022-10-28
  • Linux学习-TCP并发服务器构建(epoll)
  • 【C++】C++11的右值引用和移动语义
  • Unity游戏打包——iOS打包基础、上传
  • 使用Docker部署ZLMediaKit流媒体服务器实现gb/t28181协议的设备
  • Day30 多线程编程 同步与互斥 任务队列调度
  • ArcGIS学习-12 实战-综合案例
  • Unity游戏打包——iOS打包pod的重装和使用
  • Flutter:ios打包ipa,证书申请,Xcode打包,完整流程
  • Intern-S1-mini模型结构
  • SpringBoot系列之实现高效批量写入数据