优化代码,去除非法字符/Emoji表情

This commit is contained in:
SwimmingLiu 2024-09-16 20:13:00 +08:00
parent 3f96e387c7
commit 3e331172c3

10
main.py
View File

@ -24,6 +24,7 @@ user_message = list()
leave_message = list() leave_message = list()
forward_message = list() forward_message = list()
# 信号处理函数 # 信号处理函数
def signal_handler(signal, frame): def signal_handler(signal, frame):
# 在手动结束程序时保存已有的数据 # 在手动结束程序时保存已有的数据
@ -135,12 +136,13 @@ def save_data():
# 可见说说中可能存在多张图片 # 可见说说中可能存在多张图片
item_pic_links = str(item[2]).split(",") item_pic_links = str(item[2]).split(",")
for item_pic_link in item_pic_links: for item_pic_link in item_pic_links:
if item_pic_link is not None and len(item_pic_link) > 0 and 'http' in item_pic_link: # 如果图片链接为空或者不是http链接则跳过
# 保存图片 if not item_pic_link or len(item_pic_link) == 0 or 'http' not in item_pic_link:
pic_name = re.sub(r'[\\/:*?"<>|]', '_', item_text) + '.jpg' continue
# 去除非法字符 / Emoji表情
pic_name = re.sub(r'\[em\].*?\[/em\]|[^\w\s]|[\\/:*?"<>|\r\n]+', '_', item_text).replace(" ", "") + '.jpg'
# 去除文件名中的空格 # 去除文件名中的空格
pic_name = pic_name.replace(' ', '') pic_name = pic_name.replace(' ', '')
# 限制文件名长度 # 限制文件名长度
if len(pic_name) > 40: if len(pic_name) > 40:
pic_name = pic_name[:40] + '.jpg' pic_name = pic_name[:40] + '.jpg'