Archived
1
0
Fork 0
This repository has been archived on 2024-04-26. You can view files and clone it, but cannot push or open issues or pull requests.
akari-bot/modules/wiki/utils/ab.py

25 lines
1.3 KiB
Python
Raw Normal View History

2023-04-26 03:03:12 +00:00
from core.builtins import Url, Bot
2021-11-12 14:25:53 +00:00
from core.dirty_check import check
2023-12-09 13:42:46 +00:00
from modules.wiki.utils.time import strptime2ts
from modules.wiki.utils.wikilib import WikiLib
2021-11-12 14:25:53 +00:00
2023-04-26 03:03:12 +00:00
async def ab(msg: Bot.MessageSession, wiki_url):
2021-11-12 14:25:53 +00:00
wiki = WikiLib(wiki_url)
query = await wiki.get_json(action='query', list='abuselog', aflprop='user|title|action|result|filter|timestamp')
pageurl = wiki.wiki_info.articlepath.replace('$1', 'Special:AbuseLog')
d = []
for x in query['query']['abuselog'][:5]:
2023-01-16 07:54:07 +00:00
if 'title' in x:
2023-05-19 04:46:29 +00:00
d.append(msg.locale.t("wiki.message.ab.slice", title=x['title'], user=x['user'],
2023-12-09 13:42:46 +00:00
time=msg.ts2strftime(strptime2ts(x['timestamp']), date=False, timezone=False),
2023-04-26 03:03:12 +00:00
filter_name=x['filter'], result=x['result']))
2021-11-12 14:25:53 +00:00
y = await check(*d)
y = '\n'.join(z['content'] for z in y)
if y.find("<吃掉了>") != -1 or y.find("<全部吃掉了>") != -1:
2023-12-13 14:50:05 +00:00
y = y.replace("<吃掉了>", msg.locale.t("check.redacted"))
y = y.replace("<全部吃掉了>", msg.locale.t("check.redacted.all"))
return f'{str(Url(pageurl))}\n{y}\n{msg.locale.t("message.collapse", amount="5")}\n{msg.locale.t("wiki.message.utils.banned")}'
2021-11-12 14:25:53 +00:00
else:
2023-12-13 14:50:05 +00:00
return f'{str(Url(pageurl))}\n{y}\n' + msg.locale.t("message.collapse", amount="5")