快捷指令抓取网页到Obsidian
苹果手机共享到 Obsidian,只能抓取URL链接,不能抓取文章。看到利用ios指令提升移动端obsidian使用体验,可以使用快捷指令自动化抓取网页内容,就动手试了一下,其中的坑很多,文章里面也没有说清楚,这里做了记录。
快捷指令设置
只需要安装 Obsidian Advanced URI 插件,不需要 Toolbox Pro。经过测试,长文本通过 Advanced URI 也可以很准确的写入 Obsidian 。
日常文章来源微信公众号
、网易新闻
和知乎
,有时还会直接用浏览器
看网页,测试的时候主要是这4个场景。
输入快捷指令
从共享表单输入,或者读取剪贴板URL。两个输入方式分别对应不同的操作方法
- 从共享表单输入。网易新闻
共享-系统
,浏览器共享
,拉到最后找到这个快捷指令,就能读取相应的信息。微信公众号的共享-系统
实际不是调用系统共享只有常用的公众号,不使用这个场景。 - 获取剪贴板。将当前页面的URL拷贝到剪贴板,网易新闻和微信公众号共享中都有复制链接功能。
- 知乎比较特殊,对于文章保护措施比较多,拉取文章经常会失败。知乎共享中有系统功能,也能找到这个快捷方式,但是拉取文章失败,共享中也可以复制链接,也拉取文章失败。
处理加工
处理4步:
- 从快捷指令中获取URL。
- 通过URL拉取文章。这是通过URL重新拉取网页。
- 拉取的网页markdown化。经过实测,可以保留图片链接,黑体字等,但是有些标题识别不出来,总体还能接受。
- 拼接 Obsidian 模板。主要有fromtmatter,包括日期,文章原始链接、作者等,这三个字段都可以从拉取的网页信息中得到,其中日期可以自定义格式,我定义的格式为
yyyy-MM-dd HH:mm:ss
, 还有别名、tag等,再后面是文章的1号标题,使用网页标题,正文是markdown化后的内容,尾部做了个tag
处理过程很清晰,第2步拉取知乎网页会失败,第三步文章markdown化更加符合 Obsidian 的风格
写入Obsidian
输出到Obsidian分3步
- 将前面的文章模板URL编码。这个步骤很重要,可能因为模板里面有
#
,没有这一步,输出Obsidian失败 - 拼接写入Obsidian的URL。其中
- vault为Obsdian仓库名称
- filepath为文章存放路径和文章名称,这里路径为
/Inbox/Webclip
,文章名为日期-标题.md
的形式,日期格式自定义为yyyyMMdd-
,完整的文章路径类似/Inbox/Webclip/20241117-使用Obsidian免费建个人博客.md
- 打开这个URL。就可以将文章写入Obsidian
部署快捷指令
将快捷指令命名为 OB通过URL拉取内容
,选择 在共享表单中显示
,
将这个快捷指令也放在手机的 设置-辅助功能-辅助触控
小圆点中,方便调用
使用
微信公众号
这个方法对微信公众号适配的最好,基本能原样抓取,2步
2种方法都可以
- 网易新闻文章 - 共享 - 系统 - OB通过URL抓取内容
- 网易新闻文章 - 共享 - 复制链接,然后小圆点 - OB通过URL抓取内容
浏览器
- 浏览器共享 - OB通过URL抓取内容
知乎
知乎最不好处理。测试了各种方法,最后放弃了在手机上抓取,仍然用PC浏览器插件抓取。在知乎APP上看到感兴趣的文章,收藏在知乎收藏夹种,再在知乎网页端在PC浏览器上抓取。浏览器使用了 MarkDonwload
插件,抓取知乎文章很完美。
附一:还需要完善
由于使用了网页标题做为Obsidian文件名,标题中诸如 |
、[
等字符需要过滤掉,否则保存文章会失败。
附二:iCloud
iCloud链接,供参考和使用: OB通过URL抓取内容
#日期/2024-11-23