You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:如何自动化网页全选复制抓取数据?替代HTML解析方案

网页全选复制自动化抓取方案

针对目标网页的反爬渲染机制,以下两种方案可实现模拟手动全选复制的自动化流程:

方案一:Selenium 结合剪贴板操作

利用Selenium模拟页面全选与复制,再读取剪贴板内容,步骤清晰且适配多数场景:

  • 初始化Chrome浏览器,配置剪贴板访问权限
  • 加载目标网页并等待完全渲染
  • 模拟全选与复制操作
  • 读取系统剪贴板内容,保存或返回至Python变量

代码示例

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options
import pyperclip
import time

# 配置Chrome选项,启用剪贴板读写权限
chrome_options = Options()
chrome_options.add_argument("--enable-clipboard-read")
chrome_options.add_argument("--enable-clipboard-write")

# 初始化浏览器
driver = webdriver.Chrome(options=chrome_options)
driver.get("https://datawrapper.dwcdn.net/vEKjO/39/")

# 等待页面完全渲染(可根据实际加载速度调整时长)
time.sleep(5)

# 聚焦页面并执行全选
body = driver.find_element("tag name", "body")
body.send_keys(Keys.CONTROL + "a")

# 执行复制操作
body.send_keys(Keys.CONTROL + "c")

# 读取剪贴板内容
copied_content = pyperclip.paste()

# 保存内容到本地文件
with open("page_content.txt", "w", encoding="utf-8") as f:
    f.write(copied_content)

# 关闭浏览器
driver.quit()

方案二:PyAutoGUI 完全模拟手动操作

通过模拟真实鼠标键盘操作,还原手动全选复制流程,适配更严格的反爬场景:

  • 打开指定浏览器
  • 输入目标网页URL并加载
  • 执行全选、复制快捷键
  • 读取剪贴板内容并保存

代码示例

import pyautogui
import pyperclip
import time

# 打开Chrome浏览器(Windows环境,其他系统可调整操作)
pyautogui.hotkey("win", "r")
pyautogui.typewrite("chrome")
pyautogui.press("enter")
time.sleep(3)

# 输入网址并回车加载
pyautogui.typewrite("https://datawrapper.dwcdn.net/vEKjO/39/")
pyautogui.press("enter")
time.sleep(8)  # 等待页面完全加载

# 执行全选与复制
pyautogui.hotkey("ctrl", "a")
pyautogui.hotkey("ctrl", "c")
time.sleep(1)

# 读取剪贴板内容
copied_content = pyperclip.paste()

# 保存内容到本地
with open("page_content.txt", "w", encoding="utf-8") as f:
    f.write(copied_content)

# 关闭浏览器(可选)
pyautogui.hotkey("ctrl", "w")

注意事项

  • 方案一需确保Selenium与浏览器版本匹配,权限配置正确
  • 方案二依赖屏幕分辨率与窗口状态,需保证浏览器处于前台
  • 可根据网页实际加载速度调整time.sleep()时长,或改用显式等待提升稳定性

内容的提问来源于stack exchange,提问作者J Taylor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 21:23:19