dev-bricks/MethodenAnalyser

GitHub: dev-bricks/MethodenAnalyser

基于 AST 的 Python 静态代码分析器,通过 Tkinter 图形界面检测未使用导入、死代码和相似代码块。

Stars: 0 | Forks: 0

Version Python License GUI No Dependencies

MethodenAnalyser

带 GUI 的静态 Python 代码分析器 — 查找未使用的 Imports、死代码和相似代码块

## 功能 | 功能 | 描述 | |---------|-------------| | **AST 分析** | 通过 Python 抽象语法树 (AST) 进行精确分析 | | **Import 追踪** | 检测已使用和未使用的 Imports | | **方法目录** | 列出所有函数、方法和类 | | **重复检测** | 查找相似代码块(可配置阈值,默认:80%) | | **框架检测** | 检测 Tkinter、requests、asyncio 等定义是否被隐式使用 | | **回调检测** | 正确识别回调函数为已使用 | | **多文件** | 递归分析整个 Python 项目 | | **GUI** | 简单的 Tkinter 界面,无需终端 | ### MethodenAnalyser 与 pylint / flake8 / vulture 有何区别? | 功能 | MethodenAnalyser | pylint | flake8 | vulture | radon | |---------|:---:|:---:|:---:|:---:|:---:| | 未使用的 Imports | ✅ | ✅ | ⚠️ | ✅ | ❌ | | 未使用的定义 | ✅ | ⚠️ | ❌ | ✅ | ❌ | | **代码相似度** | ✅ | ❌ | ❌ | ❌ | ❌ | | **框架检测** | ✅ | ⚠️ | ❌ | ❌ | ❌ | | **GUI** | ✅ | ❌ | ❌ | ❌ | ❌ | | **回调检测** | ✅ | ❌ | ❌ | ⚠️ | ❌ | | 无需安装 | ✅ | ❌ | ❌ | ❌ | ❌ | ## 安装 无外部依赖。仅需 Python 3.10+。 ``` git clone https://github.com/lukisch/MethodenAnalyser.git cd MethodenAnalyser python MethodenAnalyser3.py ``` 或者在 Windows 上双击 `START.bat`。 ## 使用 ### 分析单个文件 1. 启动工具 (`python MethodenAnalyser3.py` 或 `START.bat`) 2. 点击 **"Datei analysieren"** 并选择 `.py` 文件 3. 结果将显示在输出窗口中 ### 分析整个项目 1. 点击 **"Projekt analysieren"** 并选择项目文件夹 2. 所有 `.py` 文件将被递归搜索 3. 输出带有评分的聚合项目报告 ## 示例输出 ``` === ANALYSE: my_script.py === IMPORTS (3 gesamt): ✅ os — genutzt ✅ json — genutzt ⚠️ pathlib — moeglicherweise ungenutzt DEFINITIONEN (5 gesamt): ✅ main() ✅ load_config() ⚠️ old_helper() — nicht referenziert AEHNLICHE CODE-BLOECKE (Schwellwert: 80%): Zeilen 42-55 ↔ Zeilen 88-101 (Aehnlichkeit: 91%) ``` ## 配置 可在源代码中调整: ``` SIMILARITY_THRESHOLD = 0.8 # Schwellwert fuer Duplikat-Erkennung (0.0 - 1.0) WINDOW_GEOMETRY = "1200x700" # Fenstergrösse ``` ## 许可证 本项目基于 [MIT License](LICENSE) 授权。 ## 英语 A static Python code analyzer with AST analysis, duplicate detection, and GUI. ### 功能 - AST-based analysis - Duplicate code detection - Method complexity metrics - Interactive GUI ### 安装 ``` git clone https://github.com/lukisch/REL-PUB_MethodenAnalyser.git cd REL-PUB_MethodenAnalyser pip install -r requirements.txt python "MethodenAnalyser3.py" ``` ### 许可证 See [LICENSE](LICENSE) for details.
标签:MethodenAnalyser, Python, Tkinter GUI, 二进制发布, 代码审查工具, 代码相似度, 代码重复检测, 函数追踪, 安全专业人员, 对称加密, 开源工具, 无依赖, 无后门, 未使用导入检测, 桌面应用, 死代码消除, 清理脚本, 自动化payload嵌入, 自动化审计, 逆向工具, 重构辅助, 错误基检测, 静态代码分析