pypi: как проверить, использует ли пакет колесо - PullRequest
2 голосов
/ 15 мая 2019

Я хочу написать скрипт, который проходит через все пакеты в хранилище pypi, чтобы проверить, используют ли они wheel или egg.

Я знаю, что по новому стандарту все пакеты должны использовать wheel, а не egg. Я нашел эту информацию на этом веб-сайте. У них также есть список пакетов, которые используют и не используют wheel. Но они перечисляют только несколько лучших пакетов. Но я хотел бы проверить это для всех пакетов на Pypi. Я знаю, что на сайте Pypi они показывают, какие типы файлов доступны для загрузки, например. this показывает, что для загрузки недоступен тип файла колеса, наоборот this показывает, что формат колеса доступен для загрузки. Помогает ли мне что-то подобное в достижении моей цели?

Я, конечно, не ожидаю, что кто-то напишет для меня сценарий, но я бы хотел подсказать, как определить, использует ли пакет wheel.

Ответы [ 3 ]

3 голосов
/ 15 мая 2019

PyPI имеет JSON API, который предоставит вам все выпуски для данного проекта и все файлы для данного выпуска: https://warehouse.readthedocs.io/api-reference/json/

1 голос
/ 15 мая 2019

PIP по умолчанию использует Простой PyPi-репозиторий .

Если вы откроете ссылку, вы увидите, что она имеет ссылку для каждого доступного пакета.

Если вы откроете ссылку на пакет, вы увидите различные пакеты, версии и доступные варианты загрузки.

Очевидно, вам придется проверять крайние случаи, но я должен подумать, что проверкой, имеет ли последняя версия расширение .whl, должно быть хорошее начальное место.

1 голос
/ 15 мая 2019

Вы можете использовать pip download для загрузки необходимой библиотеки, а затем проверить, является ли это файлом колеса или чем-то еще.Но, таким образом, вы проверяете только библиотеки, доступные для вашего собственного дистрибутива / ОС и версии Python.Могут быть варианты…

...