从X剪贴板获取HTML源或富文本

从X剪贴板获取HTML源或富文本,第1张

概述如何从X剪贴板获取丰富的文本或HTML源代码?例如,如果您从Web浏览器复制一些文本并将其粘贴到kompozer中,则将其粘贴为HTML,并保留链接等。但是,对于相同的选择,xclip -o只是输出纯文本,以与elinks -dump类似的方式重新格式化。我想把HTML拉出来,进入一个文本编辑器(特别是vim)。 我问the same question on superuser.com,因为我希望 如何从X剪贴板获取丰富的文本或HTML源代码?例如,如果您从Web浏览器复制一些文本并将其粘贴到kompozer中,则将其粘贴为HTML,并保留链接等。但是,对于相同的选择,xclip -o只是输出纯文本,以与elinks -dump类似的方式重新格式化。我想把HTML拉出来,进入一个文本编辑器(特别是vim)。

我问the same question on superuser.com,因为我希望有一个实用程序来做到这一点,但我没有得到任何翔实的回应。 X剪贴板API对我来说是一个神秘的野兽;任何关于黑客攻击的提示都是非常受欢迎的。我现在选择的语言是Python,但几乎任何事情都可以。

解决方法 在X11中,您必须与选择所有者通信,询问支持的格式,然后以特定格式请求数据。我认为最简单的方法是使用现有的窗口工具包。例如。与Python和GTK:
#!/usr/bin/pythonimport glib,gtkdef test_clipboard():    clipboard = gtk.Clipboard()    targets = clipboard.wait_for_targets()    print "Targets available:",",".join(map(str,targets))    for target in targets:        print "Trying '%s'..." % str(target)        contents = clipboard.wait_for_contents(target)        if contents:            print contents.datadef main():    mainloop = glib.MainLoop()    def cb():        test_clipboard()        mainloop.quit()    glib.IDle_add(cb)    mainloop.run()if __name__ == "__main__":    main()

输出将如下所示:

$ ./clipboard.py Targets available: TIMESTAMP,TARGETS,MulTIPLE,text/HTML,text/_moz_HTMLcontext,text/_moz_HTMLinfo,UTF8_STRING,COMPOUND_TEXT,TEXT,STRING,text/x-moz-url-priv...Trying 'text/HTML'...I asked <a href="http://superuser.com/questions/144185/getting-HTML-source-or-rich-text-from-the-x-clipboard">the same question on superuser.com</a>,because I was hoPing there was a utility to do this,but I dIDn't get any informative responses.Trying 'text/_moz_HTMLcontext'...<HTML><body ><div ><div ID="content"><div ID="mainbar"><div ID="question"><table><tbody><tr><td ><div><div ><p></p></div></div></td></tr></tbody></table></div></div></div></div></body></HTML>...Trying 'STRING'...I asked the same question on superuser.com,but I dIDn't get any informative responses.Trying 'text/x-moz-url-priv'...http://stackoverflow.com/questions/3261379/getting-HTML-source-or-rich-text-from-the-x-clipboard
总结

以上是内存溢出为你收集整理的从X剪贴板获取HTML源或富文本全部内容,希望文章能够帮你解决从X剪贴板获取HTML源或富文本所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1110824.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存