Я хотел бы проанализировать дерево зависимостей пакетов Python. Как я могу получить эти данные?
Вещи, которые я уже знаю
setup.py
иногда содержит полеrequires
, в котором перечислены зависимости пакетов.- PyPi — это онлайн-репозиторий пакетов Python.
- У PyPi есть API
Вещи, которые я не знаю
- Очень немногие проекты (около 10%) на PyPi явно перечисляют зависимости в поле
requires
, ноpip/easy_install
по-прежнему удается загружать правильные пакеты. Что мне не хватает? Например, популярная библиотека для статистических вычисленийpandas
не перечисляетrequires
, но все же может установитьnumpy
,pytz
и т. д. Есть ли лучший способ автоматического сбора полного списка зависимостей? - Есть ли где-нибудь уже существующая база данных? Я повторяю существующую работу?
- Существуют ли аналогичные легкодоступные базы данных для других языков с системами распространения (R, Clojure и т. д.?)?