Juszoe / flexget-nexusphp

A flexget plugin for filter nexusphp torrents
GNU General Public License v3.0
516 stars 115 forks source link

U2没有匹配到优惠 #41

Closed tatsuz0u closed 4 years ago

tatsuz0u commented 4 years ago

使用1.3版本,

flexget.log config.yml.log

(config.yml.log删掉.log)

与此同时,网站显示优惠情况为,

image
tatsuz0u commented 4 years ago

2.33x 0.00x那个不知道怎么写,普通的2xfree这个就正常了,希望作者更新 adapter: 2xfree: pro_free2up

tatsuz0u commented 4 years ago

并且出现了类似https://github.com/Juszoe/flexget-nexusphp/issues/8 的问题

mylovesaber commented 4 years ago

你改了什么地方啊?我看源码里面的确有other的信息啊

tatsuz0u commented 4 years ago

原本无论是在discount写了free和2xfree还是没写,都会一律被reject掉,自己加了 adapter: 2xfree: pro_free2up 以后,才能让2xfree的种子被accept,但是种子详情页的其它种子一旦包含2xfree,无论该种子是什么优惠类型都会被accept,这样会徒增下载量

Juszoe commented 4 years ago

u2默认匹配机制如下,实际上我自己使用时会种子有被reject的情况,猜测是种子出来时并不是free,优惠信息是后来添加的,而插件会对优惠信息进行缓存。

'u2.dmhy': {
                '<td.*?top.*?pro_free.*?优惠历史.*?</td>': 'free',
                '<td.*?top.*?pro_2up.*?优惠历史.*?</td>': '2x',
                '<td.*?top.*?pro_free2up.*?优惠历史.*?</td>': '2xfree',
                '<td.*?top.*?pro_30pctdown.*?优惠历史.*?</td>': '30%',
                '<td.*?top.*?pro_50pctdown.*?优惠历史.*?</td>': '50%',
                '<td.*?top.*?pro_50pctdown2up.*?优惠历史.*?</td>': '2x50%',
                '<td.*?top.*?pro_custom.*?优惠历史.*?</td>': '2xfree'
}
tatsuz0u commented 4 years ago

因此我把remember改为no,但在肉眼确认种子属于2xfree后运行仍然reject。 添加adapter后能够accept 2xfree种子,但也有不是2xfree的种子混进来。

Juszoe commented 4 years ago

我大概知道原因了,你使用的是繁体页面,因此无法匹配成功,可以在代码中将上述字段修改为繁体即可。后续我会改进不同语言的差异。 简单的设置pro_free2up是会误判的,需要设置为

<td.*?top.*?pro_free2up.*?優惠歷史.*?</td>
tatsuz0u commented 4 years ago

谢谢,我先修改简体中文测试一下

tatsuz0u commented 4 years ago

アーカイブ.zip 已修改nexusphp.py字段为繁体中文,并设置优惠类型为free和2xfree,依然reject全部 都改成简体中文也是同一结果,none does not match discount

Juszoe commented 4 years ago

有些奇怪,配置和代码都没什么问题。 现在u2全站free,刚刚自己试了下,是可以全部Accept的。 插件是采用正则匹配来匹配free的,可以在adapter设置,不用修改代码。 再给一个试一下,优惠历史的链接是promotion.php,所以按照这个来匹配

<td.*?top.*?pro_free2up.*?promotion.*?</td>
tatsuz0u commented 4 years ago

请问是把你给出的那行补到一堆优惠历史的行里面去吗

Juszoe commented 4 years ago

请问是把你给出的那行补到一堆优惠历史的行里面去吗

新增或修改均可,我更建议在adapter设置,方便一些

tatsuz0u commented 4 years ago
nexusphp:
  discount: ['free','2xfree']
  adapter:
    2xfree: <td.*?top.*?pro_free2up.*?promotion.*?</td>

加入这个以后无论什么优惠的种子都accept了,查看种子详情发现其它版本中也并没有free和2xfree的种子 当前nexusphp.py的“优惠历史”为简体中文

Juszoe commented 4 years ago

经过我的测试,u2填错了cookie不会提示,而是识别为none

tatsuz0u commented 4 years ago

填错了cookie都还能获取到种子和详情页面的吗...我检查一下cookie

Juszoe commented 4 years ago

填错了cookie都还能获取到种子和详情页面的吗...我检查一下cookie

不能获取,所以识别为none,其他站都是跳转到登录页面,u2不一样,所以没有警告

tatsuz0u commented 4 years ago

检查了下的确cookie跟最新的不一样,等待新种子出来测试优惠条件判断

tatsuz0u commented 4 years ago

更新到最新版本,cookie正确后已经正常运作,谢谢你的耐心指导