Compare commits

...

3 commits

2 changed files with 12 additions and 10 deletions

View file

@ -1,3 +1,5 @@
import string
from aiogram.types import Message
from config import config
@ -9,10 +11,9 @@ async def handle_actions(message: Message) -> None:
logging.debug(f"收到了命中 / 开头的的消息,但是 actions 功能未启用,跳过处理")
return
rawtext = message.text
logging.debug(f"收到了命中 / 开头的消息: {rawtext}")
logging.debug(rawtext.replace('/',''))
# 如果消息是 / 开头的,但是没有后续有意义的内容,则不处理
if len(rawtext.replace('/','')) == 0 or not rawtext.replace('/','').isalpha():
logging.debug(f"收到了命中 / 开头的消息")
# 如果消息是 / 开头的,但是后续没有有意义的内容,则不处理
if len(rawtext.replace('/','')) == 0 or all(char in string.punctuation for char in rawtext.replace('/','')):
return
# 防止识别成命令而被误触发
import re

View file

@ -13,7 +13,8 @@ from config import config
whitelist_param_links = ['www.iesdouyin.com','item.taobao.com', 'detail.tmall.com', 'h5.m.goofish.com', 'music.163.com',
'www.bilibili.com', 'm.bilibili.com', 'bilibili.com', 'mall.bilibili.com',
'space.bilibili.com', 'live.bilibili.com','item.m.jd.com','item.jd.com','www.xiaohongshu.com']
'space.bilibili.com', 'live.bilibili.com','item.m.jd.com','item.jd.com',
'www.xiaohongshu.com','zhuanlan.zhihu.com']
has_self_redirection_links = ['www.cnbeta.com.tw','m.cnbeta.com.tw','www.landiannews.com', 'www.bilibili.com']
@ -157,7 +158,7 @@ def reserve_whitelisted_params(url):
new_query_params = {}
cleaned_query = urlencode(new_query_params, doseq=True)
return urlunparse(parsed_url._replace(query=cleaned_query))
elif parsed_url.hostname in ['www.iesdouyin.com','www.bilibili.com','m.bilibili.com','bilibili.com','mall.bilibili.com','space.bilibili.com','live.bilibili.com','item.m.jd.com','item.jd.com','www.xiaohongshu.com']:
elif parsed_url.hostname in ['www.iesdouyin.com','www.bilibili.com','m.bilibili.com','bilibili.com','mall.bilibili.com','space.bilibili.com','live.bilibili.com','item.m.jd.com','item.jd.com','www.xiaohongshu.com', 'zhuanlan.zhihu.com']:
# 不保留任何参数
new_query_params = {}
if 'bilibili.com' in parsed_url.hostname and 'video' in parsed_url.path and query_params:
@ -249,7 +250,7 @@ async def handle_links(message: Message):
final_urls = [url for url in final_urls if url is not None]
# 回复处理后的链接
if final_urls:
await message.reply(f"{"\n".join(final_urls)}\n消息里有包含跟踪参数的链接,已经帮你转换了哦~\n\n"
f"这个功能是试验性的,可能会出现问题"
f"可以将返回的结果再次发送给bot或者尝试手动清理。\n如果你找到了这个工具的问题,欢迎"
f"把它通过 `/report_broken_links 链接 需要去除的参数等等` 报告给开发者!")
await message.reply(f"<blockquote expandable>\n{"\n\n".join(final_urls)}\n</blockquote>\n消息里有包含跟踪参数的链接,已经帮你转换了哦~\n\n"
f"注意:这个功能是试验性的,可能会出现问题"
f"\n如果你找到了问题,欢迎"
f"把它通过 <code>/report_broken_links 链接 需要去除的参数等等</code> 报告给开发者!")