Skip to content

v0.9.0 — 匿名读页判定发布,不再信提交跳转

Choose a tag to compare

@codeugar codeugar released this 08 Aug 15:35
· 7 commits to main since this release
2a7f3a4

一条评论算不算发布出去了,现在由一次匿名读取目标页面决定,而不是看提交后跳转的网址。

修了什么

以前:网站接收评论后跳转的网址里带了个 #comment-123 之类的编号,扩展就当作发布成功。但网站把评论扣下审核、丢进垃圾箱、或者事后删掉,跳转的网址都长这样。结果是面板上一片绿,实际一条外链都没拿到。

现在:不带任何 cookie、绕开缓存重新读一遍那个页面,在页面上真的找到这条评论、并且链接确实在评论里,才算「已显示」。

这一版还修掉了上一轮判定改造里遗留的四处误判:

  • **默认主题的评论被误报成失败。**判定用字符串标记切 HTML,其中一个标记是 <footer——而 WordPress 核心每条评论开头就是 <footer class="comment-meta">,作者署名的链接正好在里面。切片切在那里,一个链接都找不到,于是把一条真实存在的外链记成了终态失败「已显示,链接被删」。现在按 DOM 解析,评论的边界就是它自己那个元素。
  • **comment-only 模式全部被记成失败。**这个模式本来就不放链接,但复查任务还是拿推广站地址去评论里找链接,找不到就判失败。现在判定标准跟着任务一起传下去。
  • **子目录站被别的站判定。**REST 地址原来是拿 域名 + /wp-json/ 拼的,WordPress 装在子目录时这会打到根目录上另一个站点。现在只用页面自己公布的地址,拼不出来就不问。
  • 重试会重复发评论。「已显示,链接被删」被算进失败列表,而「重试失败的目标」用的就是这个列表,重跑等于在一篇已经挂着自己评论的文章下再发一条。现在它算失败,但永远不进重试。

另外:只靠评论文字匹配(没有服务器给的评论编号)时,不再给出任何终态失败结论——文字像不代表就是你的评论。

新增

  • 手工添加的复查条目如果只填了页面地址、没有 #comment-123 永久链接,会明确标出「需要评论永久链接」,因为这种条目无法确定页面上哪条评论是你的,任何结论都不可信。
  • 匿名读取带一次性参数绕开整页缓存。不加这个参数的话,装了缓存插件的站会返回评论发出之前的旧页面,刚发的评论一律被判成没公开。

安装

下载 comment-link-assistant-extension-0.9.0-chrome.zip 解压,在 chrome://extensions 打开开发者模式,「加载已解压的扩展程序」选解压出来的目录。


Full Changelog: v0.8.0...v0.9.0