简介

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:可以商用,用于个人或企业引流推广等商业场景。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。