Hip*_*p89 5 macos applescript rtf automator hyperlink
我希望能够获得我在Mac上选择的任何带格式文本(如网页或文字处理器文档等带格式文本)中所有超链接URL的列表。
最好是我想使用Applescript或Automator从文本中提取此超链接列表(以便随后可以使用Applescript对这些URL进行进一步处理)。
请注意,我所说的是从格式化文本中提取超链接,而不仅仅是从包含纯文本URL的文本中提取URL。
从格式化文本中提取超链接似乎应该是一个简单的编程任务,但是我一直在努力寻找一种方法来使用Applescript或Automator。
可以将Automator设置为接受来自文本选择的富文本输入,也可以从剪贴板输入富文本,但是我找不到在Automator或Applescript中以字符串形式访问此富文本的任何方法,因此我可以提取超链接富文本数据字符串中的URL。
一旦我以字符串形式访问富文本数据,提取URL就不会有问题。
我们将很高兴收到关于如何解决此问题的任何建议。
Applescript本身不会解包嵌入的文本,因此您必须以一种或另一种方式使用帮助程序。您可以使用do shell脚本'textutil'取消链接的嵌入:
perl -ne 'print chr foreach unpack("C*",pack("H*",substr($_,11,-3)))' |
textutil -stdin -stdout -convert html -format rtf
Run Code Online (Sandbox Code Playgroud)
然后,您必须提取URL。我建议使用Automator操作“提取数据”来执行此操作。如果将整个事情设置为Automator Workflow,则可以从Applescript调用它。或者,如果将其另存为服务,则可以从服务中运行整个过程。这是该方法的屏幕截图,应显示您的需求:
如果您有任何问题,请告诉我。您可以在此处看到此技术的各种变化。
更新:如果要将其创建到服务中,则很难将Automator的内置输入强制转换为RTF。一种有效的方法是忽略输入并执行
keystroke "c" using command down
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1350 次 |
最近记录: |