源码系统概览
文章正文
「编程助手」是一套基于 Flask 构建的 Web 开发工具集源码,内置密码生成、代码格式化、JSON / SQL 美化、编码解码、二维码生成等 20 多种实用工具。
项目同时提供了 Windows 一键部署包(内含独立 Python 运行时与依赖)和宝塔 Linux 部署包;
后者通过 deploy.php / index.php 这两个 PHP 文件调用 shell_exec 拉起 Python 进程,实现「访问域名即一键部署」的体验。
核心业务逻辑为 Python / Flask,PHP 仅作为部署与进程管理外壳。
源码简介
源码主体在 Windows一键部署包 内:app.py 是 Flask 主应用,templates 与 static 存放界面与静态资源,local_libs 与 local_python 是随包内置的 Python 依赖与运行时,requirements.txt 列出 Flask / requests / Pillow / qrcode / beautifulsoup4 / psutil / Pygments 等依赖。
宝塔Linux部署 目录则提供面向宝塔面板的部署方式:index.php 作为部署管理界面,deploy.php 通过 shell_exec 检测 Python 环境、启动或停止 app.py;
README 明确指出若 PHP 报「shell_exec 函数被禁用」,需到 PHP 设置中删除该禁用函数。免责声明.txt 与多份部署说明 Markdown 一并给出。
整体是一个「Python 业务 + PHP 部署壳」的组合形态。
适用场景
适合作为开发者的私有在线工具箱、站长运维辅助面板,或本地 / 服务器上的轻量工具集合。
亮暗双主题与响应式布局使其桌面与手机均可使用;本地运行、数据不出网的特性也适合处理敏感文本。
亦可作为 Flask + 一键部署教学的示例项目。
功能亮点
工具覆盖广:密码生成(含强度评估)、Python / JS / JSON / SQL 代码格式化与美化、多种编码解码、二维码生成、网页截图等;界面现代,支持亮 / 暗主题切换与实时结果预览;
开箱即用,Flask 轻量、依赖已打包;部署灵活,Windows 直接启动,宝塔通过 PHP 一键拉起;
强调本地运行、数据不外传。
技术架构与部署指南
| 维度 | 本套源码 | 同类通用方案 |
|---|---|---|
| 技术栈 | 前端:HTML + CSS + 原生 JavaScript(管理界面与工具页) 后端:Python 3.8+ 与 Fl |
依具体方案选型,需自行搭建与维护 |
| 部署方式 | Windows:直接运行 start_app.py 或部署包内的 Python 启动器,默认监听 5000 端口。 | 多托管于第三方平台或订阅云服务 |
| 功能侧重 | 工具覆盖广:密码生成(含强度评估)、Python / JS / JSON / SQL 代码格式化与美化、多种编码解码、二 | 功能通用,定制深度有限 |
| 数据归属 | 数据自持,部署在自有服务器,不出站 | 数据通常留存于服务商侧 |
| 成本模式 | 获取后自主部署,无持续授权费用 | 通常按订阅或调用量计费 |
技术栈与运行环境
前端:HTML + CSS + 原生 JavaScript(管理界面与工具页)
后端:Python 3.8+ 与 Flask 2.3(核心业务),PHP 7.0+ 仅用于宝塔 / Windows 部署外壳
数据库:无(本地内存 / 文件)
运行环境:Python 3.8+、Flask 2.3.3;可选 PHP 7.0+(宝塔 / Windows 部署 wrapper)
其他依赖:requests、Pillow、qrcode、beautifulsoup4、psutil、Pygments(已打包于 local_libs)
安装与部署提示
Windows:直接运行 start_app.py 或部署包内的 Python 启动器,默认监听 5000 端口。
宝塔 Linux:将宝塔Linux部署 目录上传到网站根目录,访问域名后点击「一键部署」,deploy.php 会通过 shell_exec 启动 app.py;
若提示 shell_exec 被禁用,请到软件商店 → PHP 设置 → 禁用函数中删除 shell_exec 与 exec 后重启 PHP。config.ini 可调整端口等参数。
注意内置 Python 为第三方打包,建议校验完整性后再用于生产。
截图与演示说明
部署管理界面 index.php 展示应用状态(已停止 / 运行中)、一键部署 / 停止 / 查看状态 / 查看日志等按钮,以及快速访问入口。
工具箱主页 templates/index.html 以卡片网格罗列各类工具:密码生成器(长度 / 复杂度调节、强度条、一键复制)、代码格式化(Python / JS / JSON / SQL 美化与高亮)、编码解码、二维码生成等;每个工具的结果区实时渲染,移动端同样可用。部署日志区会回显 app.py 的启动输出,便于排查。
常见问题
问:提示 shell_exec 函数被禁用怎么办?
这是宝塔环境常见提示。进入软件商店 → PHP 设置 → 禁用函数,删除 shell_exec 与 exec 并重启 PHP 即可,deploy.php 需要它们来启动 Python 进程。
问:端口被占用或打不开页面?
默认使用 5000 端口,请在 config.ini 中修改 PYTHON_PORT,并确认服务器防火墙 / 安全组已放行该端口。
问:必须装 PHP 吗?
仅在用宝塔 / Windows 一键部署壳时才需要 PHP;若直接以 Python 运行 app.py,则只依赖 Python 与 Flask,无需 PHP。
安全风险提示
路径:宝塔Linux部署/deploy.php、Windows一键部署包/index.php;
类型:命令执行;
证据:部署脚本大量使用 shell_exec 管理 Python 进程(启动、状态、停止、端口检测),且官方部署指南要求从 PHP 禁用函数中「删除 shell_exec / exec」,这会降低 PHP 层防护。
风险:若把部署界面暴露到公网且缺乏鉴权,shell_exec 可能被用于远程命令执行。
建议:仅在可信内网 / 本机部署;如必须公网,务必加访问控制与身份认证;不要随意放开 shell_exec;定期更新内置 Python 依赖并校验 local_python 完整性。
本源码未检出 eval / base64_decode / gzinflate 等混淆特征。
下载说明
源码仅供学习研究、测试部署和二次开发参考,商用前请自行确认授权、版权和安全风险。
该工具箱含进程命令执行能力,仅限自用或授权环境部署;
公网暴露须加鉴权与访问限制,因配置不当导致的安全事件由使用者自行承担。
