Web Clipper插件如何使用for循环指定次数

Web Clipper插件,获取到了网页图片数量A,图片通过其他浏览器插件下载后已自动重命名为p0~pA,希望文档内能够自动生成![[p0]]~![[pA]],

这问题等价于怎么让 Web Clipper 生成一串如下文本:

![[p1]]
![[p2]]
![[p3]]
...

它其实不太擅长干这个, 查了下, 发现 Web Clipper 似乎也没有原生的 range 表示法

但如果 Web Clipper 已经拿到了网页的图片元素, 可以试试:

{% set images = selector:img %}
{% for image in images %}
   ![[p{{loop.index0}}.jpg]]
{% endfor %}

其中 loop 语法见 Logic - Obsidian Help, 以上模板里:

  • selector:img 可能没这么简单, 还得排除无关的装饰图片, 即确保它跟 “其他浏览器插件” 拿到相同图片, 所以更可能是类似 selector:#mainContent img 这种的
  • loop.index0 可改为 loop.index 表示从1开始编号
  • 如果图片是无法预知后缀名的, 说实话还不太好办, 得把 src 迭代进来写写字符串处理

另一个思路是用它的提示词功能:

{{ "生成一串数字递增的文字序列, 形如 ![[p0]]  ![[p1]]  ![[p2]] ... 总计 10个, 每段之间要换行" }}

试了下能用, 就是感觉有点傻…

1 个赞