【自编脚本】GM第二届欢唱活动 关键词检测
本帖最后由 星之子 于 2024-8-20 23:34 编辑【细语欢歌】GM第二届欢唱活动
根据活动细则,今年的选歌条件是符合50个条件中的1-3个,其中有40个关键词条件和10个曲风条件。
为了方便大家凑关键词数量,特写python脚本一枚,并由pyinstaller包转为.exe可执行文件。
下载地址
最近周年庆真的好缺金币,但周年庆嘛,写了脚本大家一起用才比较有趣{:6_197:}。所以设置了两个链接(里面的内容是一样的),一个收费一个不收费喵{:6_200:}如果能得到投币支持我会非常感激{:6_167:}~
——内含.exe可执行文件一枚 约10.3MB——
大家一起快乐通道:
投俩硬币赞助通道:
效果如下
(不开灯俱乐部好听四了可以判断涉及到的关键词、且不重复计入,还可以输入你抽到的3个关键词进行定向检测。
Python代码如下
import tkinter as tk
import ctypes
#告诉操作系统使用程序自身的dpi适配
ctypes.windll.shcore.SetProcessDpiAwareness(1)
#获取屏幕的缩放因子
ScaleFactor=ctypes.windll.shcore.GetScaleFactorForDevice(0)
# 创建主窗口
root = tk.Tk()
root.title("GM第二届欢唱活动 关键词检测")
#设置程序缩放
#这里的root是你设定的窗口
root.tk.call('tk', 'scaling', ScaleFactor/54)
# 定义关键词列表
keywords = ["春", "夏", "秋", "冬", "东", "南", "西", "北",
"风", "花", "雪", "月", "阴", "晴", "雨", "雾",
"天", "长", "地", "久", "电", "光", "石", "火",
"男", "欢", "女", "爱", "百", "转", "千", "回",
"高", "山", "流", "水", "世", "界", "大", "同"]
def check_keywords():
# 获取输入的文本
text = text_entry.get("1.0", tk.END)
# 将文本分割成多行
lines = text.splitlines()
# 检查每一行是否包含关键词
found_keywords = set(keyword for line in lines for keyword in keywords if keyword in line)
# 在输出框中显示找到的关键词
output_text.delete(1.0, tk.END)
output_text.insert(tk.END, ', '.join(found_keywords))
# 获取额外的关键词
extra_keywords =
# 检查额外的关键词是否在找到的关键词中
found_extra_keywords =
# 在第二个输出框中显示找到的额外关键词
extra_output_text.delete(1.0, tk.END)
extra_output_text.insert(tk.END, f"找到了 {len(found_extra_keywords)} 个额外的关键词: {', '.join(found_extra_keywords)}")
# 创建输入框标题
text_entry_label = tk.Label(root, text="将歌词粘贴到此处:")
text_entry_label.grid(row=0, column=0, columnspan=3, sticky='w', padx=5, pady=5)
# 创建输入框
text_entry = tk.Text(root, height=12)
text_entry.grid(row=1, column=0, columnspan=3, sticky='ew', padx=5, pady=5)
# 创建额外输入框标题
extra_entries_label = tk.Label(root, text="你的3个关键词:")
extra_entries_label.grid(row=2, column=0, columnspan=3, sticky='w', padx=5, pady=5)
# 创建3个额外的输入框
extra_entries =
for i, entry in enumerate(extra_entries):
entry.grid(row=3, column=i, sticky='ew', padx=5, pady=5)
# 创建按钮,点击时会调用check_keywords函数
check_button = tk.Button(root, text="检查关键词", command=check_keywords)
check_button.grid(row=4, column=0, columnspan=3, sticky='ew', padx=5, pady=5)
# 创建输出框标题
output_text_label = tk.Label(root, text="你的歌词中包含下列关键词:")
output_text_label.grid(row=5, column=0, columnspan=3, sticky='w', padx=5, pady=5)
# 创建输出框
output_text = tk.Text(root, height=5)
output_text.grid(row=6, column=0, columnspan=3, sticky='ew', padx=5, pady=5)
# 创建第二个输出框
extra_output_text = tk.Text(root, height=5)
extra_output_text.grid(row=7, column=0, columnspan=3, sticky='ew', padx=5, pady=5)
# 设置列宽度自动调整
for i in range(3):
root.columnconfigure(i, weight=1)
# 运行主循环
root.mainloop()
求赞环节
如果觉得内容还不错,拜托拜托,请点个免费的追随吧♪(´▽`)/ 感谢!
这对萌新升级真的很重要,希望能得到很多很好的评价惹,这会是我积极更新的动力~
https://img.gamemale.com/album/202405/31/001344ngqe3xzhqghtgm3f.jpg
这么快就出脚本了,值得鼓励诶 太棒了 ,这样可以快速筛选符合关键词的歌曲~猫猫一开始还以为是输入关键词,可以提供歌曲,但是一想,这要多大的曲库才行呀。谢谢~ 会写代码真的可以为所欲为呀{:3_53:} 很方便的检查自己选的歌有没有符合条件惹:$ 哈哈是python大佬,有了这个能快速选出符合条件的歌呢 活动还没开始,脚本先出了,好迅速呢。 我也有这个想法写一个,不过又现成的那就可以省点力气了 活动还没开始脚本就已经写出来了效率好高啊,不过对我这种不怎么听歌的最大的难点在于找到熟悉又符合条件的歌{:4_92:} 不开灯俱乐部确实好听四了
前两天练了练这首真的难{:4_100:}
支持正义脚本 其实只要符合一个条件就可以拿勋章了 主要还是得看roll点结果和自己的曲目的重合情况 虽然五音不全但好棒好迅速,赞一个ฅ^•ﻌ•^ฅ 好牛的大佬,刚才还在绞尽脑汁的想歌曲,一个脚本解君愁了 这就是脚本大佬的为所欲为嘛 :$雅儿哟,真是想睡觉就有了枕头 泥潭现在还有代码大佬;P
真是人才辈出内~ 果然泥潭有很多大佬,脚本很强悍啊 本帖最后由 koh 于 2024-6-5 12:30 编辑
!!!居然是歌词凑关键字!我还以为是歌名!
之前没注意,以为要求很苛刻,现在想想Soeasy~
好强,不过感觉阻拦我参加活动的原因估计不会是找不到曲子,是我的五音不全