我想复制一些富文本,修改其源代码(更改一些标签和文本,使用正则表达式和/或美丽汤)并将其发送回剪贴板。我正在寻找最简单的方法。
我尝试了win32剪贴板,但它不支持CF_HTML
格式(Windows剪贴板包含许多格式)。
所以我正在寻找一个可以帮助我获得这种格式的模块:如果CF_HTML剪贴板格式包含 HTML,请将其存储在该变量中,执行一些操作,然后将其发回。(可选:并在其他剪贴板格式上执行其他操作)
这是我正在寻找的Linux等价物。当剪贴板中有一些时,它会检索 HTML 源代码(源代码)
#!/usr/bin/env python
import gtk
print (gtk.Clipboard().wait_for_contents('text/html')).data
编辑1:使用此脚本可以使用pywin32。但是有没有一个模块能够直接做到这一点(如果CF_HTML包含数据,获取它,然后将其发回)?
Edit1 解决方案似乎是最好的。
- 将上面的脚本(HtmlClipboard.py)放在python模块文件夹中:C:\Users\xxx\AppData\Local\Programs\Python\Python36\Lib\site-packages
- 安装 Win32 剪贴板
-
有了上面的 2 点,您可以使用这样的脚本:
#get CF_Html Clipboard import HtmlClipboard #.py script found in github if HtmlClipboard.HasHtml(): # print('there is HTML!!') dirty_HTML = HtmlClipboard.GetHtml() print(dirty_HTML) else: print('no html') dirty_HTML= clean_HTML #do what you want with it #put data to clipboard: HtmlClipboard.PutHtml(clean_HTML)
奖金:
##get CF_TEXT from clipboard
import win32clipboard
win32clipboard.OpenClipboard()
text = win32clipboard.GetClipboardData(win32clipboard.CF_TEXT)
win32clipboard.CloseClipboard()