如何从剪贴板获取HTML格式数据

学习笔记作者:admin日期:2025-06-05点击:5

摘要:介绍如何使用Python和pywin32库从Windows剪贴板中读取HTML格式数据,并与纯文本数据兼容。

获取剪贴板中的HTML数据

      在某些场景下,我们需要从剪贴板中获取HTML格式的内容,而不仅仅是纯文本。下面是如何通过Python实现这一功能。

代码实现

import win32clipboard
import win32con
import hashlib


def get_clipboard_content():
    win32clipboard.OpenClipboard()
    
    try:
        # 检查是否有 HTML 格式
        if win32clipboard.IsClipboardFormatAvailable(win32con.CF_HTML):
            html_data = win32clipboard.GetClipboardData(win32con.CF_HTML)
            win32clipboard.CloseClipboard()

            # 提取实际 HTML 内容(跳过 CF_HTML 的头部信息)
            # 头部以 "Version" 开始,真正的内容在后面
            if html_data.startswith(b'Version'):
                # 找到第一个 "

关键点说明

  • 通过 win32clipboard.CF_HTML 判断是否存在 HTML 格式数据。
  • HTML 数据在剪贴板中包含头部信息,需要跳过这些部分才能得到实际的 HTML 内容。
  • 如果剪贴板中没有 HTML 格式,则回退到处理纯文本。
  • 通过 hashlib.md5 对内容生成唯一标识。

关键词

      python, windows, clipboard, html, cf_html

上一篇      下一篇