【问题标题】:Copying hyperlinked text to the clipboard in Python pyperclip3在 Python pyperclip 3 中将超链接文本复制到剪贴板
【发布时间】:2022-08-15 09:23:49
【问题描述】:

我的程序需要将一些带有超链接的文本复制到剪贴板,以便用户稍后可以将文本(带有超链接)粘贴到应用程序(例如 Word、Slack)中。

此功能适用于大多数应用程序:例如,如果我从包含超链接的浏览器(或 Word 文档或 Slack 消息)复制一段文本,当我将其粘贴到另一个应用程序时,它会保留链接。

但是,当我使用 pyperclip 粘贴此内容时,我只会恢复文本(没有超链接)。

经过一些研究,我认为我需要通过 pyperclip3 使用二进制形式的回形针内容。但我不知道如何构造超链接字符串对象。

当我从 Word 复制字符串后 pyperclip3.paste() 时,我获得了看起来像二进制 PDF 对象的东西。也许我需要使用链接创建一个二进制 PDF 并将其传递给 pyperclip3.copy()?有没有更简单的方法?也许是 MIME?

    标签: python pyperclip


    【解决方案1】:

    不确定是否可行,但使用pyperclip 获取超链接将非常困难,甚至可能是不可能的。一个可能的选择是在 Mac 环境中使用Beautiful Souprichxerox

    from richxerox import *
    from bs4 import BeautifulSoup
    
    soup = BeautifulSoup(pasteboard.get_contents(format='html'),'lxml')
    links = [i.attrs['href'] for i in soup.find_all('a')]
    print(links)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-14
      • 1970-01-01
      • 1970-01-01
      • 2012-06-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多