From 0a3882c8c7dc850f6fdb68922aa9fb9313603318 Mon Sep 17 00:00:00 2001 From: hjdhnx Date: Wed, 4 Oct 2023 00:17:15 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Djs0=E6=90=9C=E7=B4=A2?= =?UTF-8?q?=E7=BF=BB=E9=A1=B5=E9=97=AE=E9=A2=98|ikanbot2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- controllers/cms.py | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/controllers/cms.py b/controllers/cms.py index 51fd8a0..c373e2a 100644 --- a/controllers/cms.py +++ b/controllers/cms.py @@ -1335,12 +1335,29 @@ class CMS: pg = str(fypage) if not self.searchUrl: return self.blank() - url = self.searchUrl.replace('**', key).replace('fypage', pg) + url = self.searchUrl.replace('**', key) if fypage == 1 and self.test('[\[\]]', url): url = url.split('[')[1].split(']')[0] elif fypage > 1 and self.test('[\[\]]', url): url = url.split('[')[0] + if url.find('fypage') > -1: + if '(' in url and ')' in url: + # url_rep = url[url.find('('):url.find(')')+1] + # cnt_page = url.split('(')[1].split(')')[0].replace('fypage',pg) + # print(url_rep) + url_rep = re.search('.*?\((.*)\)', url, re.M | re.S).groups()[0] + cnt_page = url_rep.replace('fypage', pg) + # print(url_rep) + # print(cnt_page) + cnt_ctx = {} + exec(f'cnt_pg={cnt_page}', cnt_ctx) + cnt_pg = str(cnt_ctx['cnt_pg']) # 计算表达式的结果 + url = url.replace(url_rep, str(cnt_pg)).replace('(', '').replace(')', '') + # print(url) + else: + url = url.replace('fypage', pg) + logger.info(f'{self.getName()}搜索链接:{url}') if not self.搜索: return self.blank()