jc3213 / download_with_aria2

The browser extenson for aria2 download utility via JSON-RPC
https://jc3213.github.io/download_with_aria2/
GNU Lesser General Public License v2.1
65 stars 9 forks source link

3.14.0 webRequest 模式无法排除 xpi #32

Closed ivysrono closed 2 years ago

ivysrono commented 2 years ago

已经将 xpi 写入忽略后缀,addons.mozilla.org 写入忽略域名,但依然接管了。

改成 downloads API 即可符合预期。

jc3213 commented 2 years ago

默认情况下只匹配 SLD.TLD 这个格式,当SLD满足部分TLD的时候,比如com, net, org, edu, gov, co, ne, or, me的时候,则需要匹配 SUB.SLD.TLD

比如你说的这里就是addons.moziila.org => SUB addons, SLD mozilla, TLD org。SLD的mozilla没满足上面的条件,因此匹配SLD.TLD,即mozilla.org

这的逻辑我一直觉得不太好,如果你有啥好的思路可以交流一下。我有点考虑改成同时匹配全hostnameSLD.TLD。这样就不会单独适配SUB.SLD.TLD了。而且速度也会慢一丢丢(不过考虑到计算SUB跟SLD这里可能不一定会变慢)

ivysrono commented 2 years ago

这个逻辑太反直觉了。我的第一反应,或者说我一直以为是类似于 host.endsWith(...) 另外,为啥xpi排除也失效了呢?

jc3213 commented 2 years ago

这个逻辑太反直觉了。我的第一反应,或者说我一直以为是类似于 host.endsWith(...)

实际考虑到最终是exclude, include, proxy三处匹配,在完成抓取前是2次,即使这样还是endsWith更好。这里我优化一下先。 test 3

另外,为啥xpi排除也失效了呢?

这个我明天测试下,理论上不至于啊?后面改的都跟这部分无关啊?有点迷……

jc3213 commented 2 years ago

我测试webRequestAPI,完全能例外XPI的抓取啊?而且貌似不需要设置就能例外?不知道啥原因,OTL?还是你用的别的规则? setting result

jc3213 commented 2 years ago

实在不行你试试最新的源代码? multi profile

感觉可能跟 https://github.com/jc3213/download_with_aria2/commit/694fc5f0d69d6adb30b69d13a5c2c43e5c075348#diff-f8327d456eb627712c0d419126894ea390b29d00c00b7727ad53e6fffbc17aa0R51 这里的 51行有关

ivysrono commented 2 years ago

不设置任何域名排除规则,仅设置排除XPI后缀名: main 889 和 multi 889 均符合预期排除。

我居然才反应过来release里有main的不一定要上传分支。 现在MP分支是否足够成熟,是否需要切换回main分支上传?

jc3213 commented 2 years ago

multi只是个实验性的分支,因为我觉得这个方案很不合理。只是粗略的实现了多档案,跟我想象中的不太一样。

这里最终我是想做成更复杂的所有档案都有特殊的设置选项。然后有个默认的通用选项……但是这么做很复杂我感觉有很多东西要改而且没具体思路就一直没动。

每次版本更新,multi都对应了当期得release时得版本的基础代码。至于为什么在你那边排除失败我就不得而知了。在我这边测试的时候,选择总是抓取,不管哪个API都对XPI没任何抓取问题(至少在AMO能直接安装扩展)

本次我只是单纯的优化了匹配思路,以及优化了API切换后的性能。之前是2个API并行,根据设置在事件内部进行判定,现在是切换后只使用特定的API

ivysrono commented 2 years ago

那我下个版本开始切换回main。 还有个可能是升级导致的问题,我发现几次了,需要卸载重装才能符合预期,怀疑升级和测试过程中破坏了配置。

jc3213 commented 2 years ago

main到multi并不是直接就能切换过去的……关于储存方面我也有想修改的东西。不过再说了……

jc3213 commented 2 years ago

话说可以的话帮忙测试一下最新版。稍微优化了点逻辑。就是我最近可能没时间测试。

ivysrono commented 2 years ago

测试下来没有发现问题

jc3213 commented 2 years ago

我前几天键盘坏了,用手机在QQ上打字然后复制粘贴到Github。代码是在网吧敲的。人傻了

3.15.0已经推送,