Skip to content

Multithreaded import scanner for Python projects. Ignores venvs and standard libs. Accurately detects external dependencies in large codebases.

Notifications You must be signed in to change notification settings

AlgorithmAlchemy/py-import-scanner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔄 Последнее обновление — v1.2.0

📅 Дата релиза: 2025-05-02

  • ☑️ Новый модуль статистики (Анализ проектов по дате) -- очень сырой
  • 📈 Графики по времени создания проектов
  • 📚 Анализ импортируемых библиотек
  • 🛡 Поддержка вложенных структур
  • 🐞 Исправления критических багов и повышена стабильность
  • 📄 project_stats.csv — таблица со всеми проектами в формате CSV
  • 🌐 project_stats.html — визуально отформатированная таблица, открываемая в браузере ➡ Посмотреть полный Changelog

English ENG READMY

Program provides:

py-import-scanner

Описание

py-import-scanner — это инструмент для сканирования Python-скриптов на предмет импортируемых библиотек. Он позволяет анализировать код и выявлять все использованные импорты, исключая стандартные библиотеки, такие как os, sys и другие.

Программа предоставляет функциональность для визуализации данных в виде гистограмм и круговых диаграмм, отображая количество различных импортируемых библиотек и их использование в проекте. Это позволяет разработчикам увидеть, какие библиотеки они активно используют, а также улучшить управление зависимостями.

Принцип работы

Функциональность

  • Сканирует Python-скрипты в указанной директории.
  • Игнорирует стандартные библиотеки и пакеты, перечисленные в .gitignore.
  • Генерирует статистику по импортам.
  • Отображает гистограммы и круговые диаграммы с использованием matplotlib.
  • Возможность копировать статистику в буфер обмена.

Установка

  1. Клонируйте репозиторий:

    В командной строке или PowerShell выполните:

    git clone https://github.com/AlgorithmAlchemy/py-import-scanner.git
    cd py-import-scanner
  2. Установите зависимости:

    Убедитесь, что у вас установлен Python 3.7 или выше, затем установите все зависимости:

    pip install -r requirements.txt

Использование

  1. Запуск программы:

    Для запуска программы просто выполните файл:

    python main.py

    Это откроет графический интерфейс, где вы сможете выбрать директорию для сканирования. Выберите директорию, и программа начнёт обработку файлов.

  2. Графический интерфейс:

    Программа использует библиотеку Tkinter для создания графического интерфейса. Вы можете увидеть:

    • Кнопки для выбора папки.
    • Статистику по импортам.
    • Гистограмму и круговую диаграмму, отображающие частоту использования библиотек.
  3. Использование горячих клавиш:

    • Кнопка "Выбрать папку" позволяет выбрать каталог для сканирования.
    • Кнопки "Гистограмма" и "Круговая диаграмма" отображают визуализацию статистики.
    • Статистика может быть скопирована в буфер обмена для дальнейшего использования.

Структура проекта

  • main.py — основной скрипт для запуска программы.
  • scanner.py — содержит логику для сканирования файлов.
  • requirements.txt — файл с зависимостями проекта.
  • README.md — этот файл с документацией.
  • assets/ — директория с возможными ресурсами (иконки, изображения и т.д.).

Примечания

  • Этот проект использует библиотеки для визуализации, такие как matplotlib и pyperclip.

  • В случае ошибок или проблем с зависимостями попробуйте установить их вручную с помощью команды:

    pip install matplotlib pyperclip colorama

Лицензия

Этот проект распространяется под лицензией MIT. Подробности можно найти в файле LICENSE.