简介
TG音乐搜索机器人 是 k8code 旗下的一款 Telegram 音乐搜索机器人项目,核心解决 TG 群组/私聊场景下的音乐资源检索与分享需求。用户在 Telegram 中将音频文件转发给机器人,机器人自动保存音频文件 ID、歌曲名、歌手到数据库;用户发送关键词即可模糊搜索歌曲,搜索结果支持分页浏览和点击播放。
项目独创三位置广告轮播系统(顶部文字广告、消息按钮广告、搜索底部广告),适合 TG 引流推广场景。采用 Python 异步框架 + PHP(Laravel) 后台的混合架构,代码完全原创,附详细注释与部署文档,适合 TG 机器人开发者、引流推广运营者使用或二次开发。
开发亮点
- 异步高性能架构:Python 端采用 asyncio + aiomysql 连接池 + Redis 异步客户端,搜索请求毫秒级响应,数据库连接高效复用,避免同步 I/O 瓶颈。
- Redis 缓存加速:搜索结果自动缓存 1 小时,相同关键词重复查询直接命中缓存,大幅降低数据库压力,提升用户体验。
- 智能广告轮播系统:三位置(顶部/按钮/底部)广告独立轮播,支持多条广告循环展示,按钮广告支持链接跳转,实现流量变现。
- 全功能后台管理:基于 Laravel + encore/laravel-admin 搭建的后台,支持音频管理(增删改查+搜索计数)、TG 用户管理(搜索筛选)、广告管理(类型分组+内容编辑)、群组管理。
- 完整的用户追踪:自动记录 TG 用户 ID、昵称、用户名,后台可查看用户列表与使用情况,支持运营分析。
- 高度可扩展设计:代码结构清晰,模块化分离,修改 bot.py 即可变身为视频机器人、文件机器人等,扩展成本极低。
技术栈
| 前端 | Laravel Admin 后台 UI |
| 后端 | Python 3.12 (python-telegram-bot) + PHP 7.4 (Laravel 8) |
| 数据库 | MySQL 5.7 + Redis |
| 部署 | Nginx + Supervisor / PM2 |
功能详解
1. 音乐搜索与播放
用户向机器人发送关键词(如”周杰伦”),机器人通过 MySQL LIKE 模糊匹配 audio_records 表中的歌曲名和歌手字段,检索结果每页 10 条,支持上下翻页。点击对应按钮可直接播放音频文件,所有数据走 Redis 缓存,响应迅速。
2. 音频自动入库
群组或私聊中转发音频文件给机器人,机器人自动提取 Telegram 文件 ID、标题和表演者信息,写入数据库。后台可查看所有入库音频的搜索次数,热门歌曲一目了然。
3. 广告轮播投放
后台预设三种广告位:顶部文字广告、TG 消息内联按钮广告、搜索底部文字广告。各广告位独立轮播索引,支持多条广告循环展示,按钮广告可直接跳转外部链接,适合引流推广。
4. 后台管理面板
基于 Laravel Admin 搭建的管理后台,提供用户管理、音频管理、群组管理、广告管理四大模块。支持增删改查、筛选排序、数据统计,运营人员无需技术背景即可操作。
项目架构
TG音乐搜索机器人/
├── bot.py # Telegram Bot 主程序(Python)
├── 教程.txt # 部署教程说明
├── yinbot_2024-12-14.sql # MySQL 数据库备份
└── 后台/ # PHP Laravel 后台管理
├── .env # 环境配置文件
├── app/
│ ├── Admin/
│ │ ├── Controllers/ # 后台控制器
│ │ └── routes.php # 路由配置
│ └── Models/ # 数据模型
├── config/ # Laravel 配置
└── database/ # 数据库迁移与填充
版本信息
- 当前版本:v1.0.0
- 更新日期:2024-12-14
- 更新日志:初始版本发布,实现核心音乐搜索、音频入库、广告轮播、后台管理全功能
交付内容
- 完整原创源码(含详细中文注释)
- 开发文档(架构说明 / 部署步骤 / 配置指南)
- 数据库备份脚本(MySQL 完整数据)
- 配置文件模板(.env 环境配置 / bot.py 配置注释)
- 后台管理面板(Laravel Admin 预配置)
运行环境要求
| Web 服务器 | Nginx |
| PHP 版本 | 7.4 |
| MySQL | 5.7 |
| Python | 3.12.7 |
| Redis | 最新稳定版 |
快速部署
Python 依赖安装:
pip install pytz pip install python-telegram-bot pip install aiomysql pip install aioredis pip install redis
将 bot.py 放在任意目录,修改 BOT_TOKEN、数据库连接和 Redis 配置后即可运行。
授权协议
授权类型:永久授权
授权说明:源码完全开放可修改,允许个人及商业使用。禁止未经授权的转售分发。
技术支持
- 文档支持:含详细代码注释 + 部署教程
- 更新政策:永久免费更新
- 技术支持:提供视频搭建教程
- 定制开发:可接二次定制开发
常见问题
Q:代码是100%原创吗?
A:是的,k8code 团队独立开发。Python 机器人端完全原创,PHP 后台基于 Laravel 框架 + encore/laravel-admin 扩展包搭建(框架本身为开源项目,已标注)。
Q:有使用文档吗?
A:含详细代码注释(中文),同时提供部署教程,从环境搭建到启动运行全程指导。
Q:是否允许二次开发?
A:完全允许!代码设计上考虑了扩展性,修改 bot.py 的消息处理逻辑即可变成视频机器人、文件机器人等,欢迎自行发挥。
Q:是否提供技术支持?
A:提供基础部署答疑支持,复杂的二次开发定制可另行协商。
Q:后续会更新吗?
A:后续不会在更新,需要其他功能可联系站长进行二次开发。
Q:可以商用吗?
A:可以商用,用于个人或企业引流推广等商业场景。





