Skip to content

dev-bricks/MethodenAnalyser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Version Python License GUI No Dependencies

MethodenAnalyser

Statischer Python-Code-Analyser mit GUI — findet ungenutzte Imports, tote Definitionen und aehnliche Code-Bloecke


Features

Feature Beschreibung
AST-Analyse Praezise Analyse via Python Abstract Syntax Tree
Import-Tracking Erkennt genutzte und ungenutzte Imports
Methoden-Katalog Listet alle Funktionen, Methoden und Klassen
Duplikat-Erkennung Findet aehnliche Code-Bloecke (konfigurierbarer Schwellwert, Standard: 80%)
Framework-Erkennung Erkennt ob Definitionen von Tkinter, requests, asyncio u.a. implizit genutzt werden
Callback-Erkennung Identifiziert Callback-Funktionen korrekt als genutzt
Multi-File Ganze Python-Projekte rekursiv analysieren
GUI Einfache Tkinter-Oberflaeche, kein Terminal noetig

Was unterscheidet MethodenAnalyser von pylint / flake8 / vulture?

Feature MethodenAnalyser pylint flake8 vulture radon
Ungenutzte Imports ⚠️
Ungenutzte Definitionen ⚠️
Code-Aehnlichkeit
Framework-Erkennung ⚠️
GUI
Callback-Erkennung ⚠️
Keine Installation

Installation

Keine externen Abhaengigkeiten. Nur Python 3.10+ benoetigt.

git clone https://github.com/lukisch/MethodenAnalyser.git
cd MethodenAnalyser
python MethodenAnalyser3.py

Oder unter Windows per Doppelklick auf START.bat.


Verwendung

Einzelne Datei analysieren

  1. Tool starten (python MethodenAnalyser3.py oder START.bat)
  2. "Datei analysieren" klicken und .py-Datei auswaehlen
  3. Ergebnisse werden im Ausgabefenster angezeigt

Ganzes Projekt analysieren

  1. "Projekt analysieren" klicken und Projektordner auswaehlen
  2. Alle .py-Dateien werden rekursiv durchsucht
  3. Aggregierter Projekt-Report mit Score wird ausgegeben

Beispiel-Output

=== 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%)

Konfiguration

Im Quellcode anpassbar:

SIMILARITY_THRESHOLD = 0.8   # Schwellwert fuer Duplikat-Erkennung (0.0 - 1.0)
WINDOW_GEOMETRY = "1200x700" # Fenstergrösse

Lizenz

Dieses Projekt steht unter der MIT License.


English

A static Python code analyzer with AST analysis, duplicate detection, and GUI.

Features

  • AST-based analysis
  • Duplicate code detection
  • Method complexity metrics
  • Interactive GUI

Installation

git clone https://github.com/lukisch/REL-PUB_MethodenAnalyser.git
cd REL-PUB_MethodenAnalyser
pip install -r requirements.txt
python "MethodenAnalyser3.py"

License

See LICENSE for details.

About

Statischer Python-Code-Analyser mit Tkinter-GUI: findet ungenutzte Imports, tote Definitionen und aehnliche Code-Bloecke via AST-Analyse. Kein pip install noetig.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors