Seite 1 von 1

Alle erhältlichen Pakete mit PIP auflisten

Verfasst: Montag 19. August 2019, 19:42
von angrybird
Hallo.

Ich arbeite momentan an einer App die eine grafische Benutzeroberfläche für PIP bereitstellt. Ich bin schon fast fertig damit, allerdings fehlt mir einer der wichtigsten Aspekte für eine grafische Benutzeroberfläche für einen Paketmanager, nämlich das Auflisten aller erhältlicher Pakete (auf PyPi, nicht lokal installierte Pakete). Ich weiß ja dass man dafür den Befehl

Code: Alles auswählen

pip search <Paketname>
verwenden kann, allerdings weiß ich nicht wie man alle Pakete auflistet. Ich bin auf die Seite https://pypi.org/simple/ gestoßen allerdings sind das ja alle Pakete die auf PyPi erhältlich sind oder? Ich möchte dass die aufgelisteten Pakete auch mit der zugehörigen Python Version funktionieren und soweit ich weiß funktioniert ja nicht jedes Paket mit jeder Version. Kann mir jemand mit diesem Problem helfen?

Re: Alle erhältlichen Pakete mit PIP auflisten

Verfasst: Montag 19. August 2019, 20:15
von sparrow
Schau doch mal wie pip das löst. Da wird ja auch nur installiet, was zur Python Version passt.

Re: Alle erhältlichen Pakete mit PIP auflisten

Verfasst: Montag 19. August 2019, 20:20
von angrybird
Danke für den Tipp!

Re: Alle erhältlichen Pakete mit PIP auflisten

Verfasst: Montag 19. August 2019, 21:04
von nezzcarth
Über die 'simple'-Api bekommst du alle Pakete, über die JSON-Api (https://warehouse.pypa.io/api-reference/json/#) Details zu einzelnen Pakete. So müsstest du doch eigentlich alles haben, was du benötigst, auch wenn es zugegeben etwas dauern kann, für jedes Paket einen Request abzusetzen. Diese Daten kannst du dann jedenfalls indexieren (zum Beispiel in Woosh oder sqlite, wenn es ohne viel Overhead nativ mit Python funktionieren soll) und anschließend flexibel darauf suchen. Wenn der Index einmal steht, kann man Änderungen inkrementell einspielen. Eine Such-API, mit der man z.B. nach Paketen für eine bestimmte Python-Version suchen kann, kenne ich nicht.

Siehe auch: https://warehouse.pypa.io/api-reference ... ty-details