Wie finde ich die Anzahl der heruntergeladenen Pakete bei einem PPA heraus?

15

Ich würde gerne wissen, wie viele Downloads eines bestimmten Pakets in einem PPA seit seiner Erstveröffentlichung stattgefunden haben.

Ich erinnere mich, dass es einen Fehler gab , diese Metriken auf der Web-Benutzeroberfläche abzurufen, aber soweit ich weiß, wurde sie nie implementiert.

Ich denke jedoch, dass die Anzahl der Downloads trotzdem über die Launchpad-API abgerufen werden kann, wenn ich der Eigentümer dieses PPA bin. Irgendwelche Hinweise?

David Planella
quelle

Antworten:

17

Schauen Sie sich dieses Skript an:

#!/usr/bin/python2

# Usage python ppastats.py PPATEAM (ex: webupd8team) PPA (ex: gthumb) DIST (Ubuntu version eg maverick) ARCH (ubuntu arch eg i386 or amd64)
# Example - highest downloaded file: python ppastats.py webupd8team y-ppa-manager maverick amd64 | tr '\t' ',' | cut -d ',' -f3 | sort -gr

import sys
from launchpadlib.launchpad import Launchpad

PPAOWNER = sys.argv[1]
PPA = sys.argv[2]
desired_dist_and_arch = 'https://api.launchpad.net/devel/ubuntu/' + sys.argv[3] + '/' + sys.argv[4]

cachedir = "~/.launchpadlib/cache/"
lp_ = Launchpad.login_anonymously('ppastats', 'production', cachedir)
owner = lp_.people[PPAOWNER]
archive = owner.getPPAByName(name=PPA)

for individualarchive in archive.getPublishedBinaries(status='Published', distro_arch_series=desired_dist_and_arch):
    x = individualarchive.getDownloadCount()
    if x > 0:
        print individualarchive.binary_package_name + "\t" + individualarchive.binary_package_version + "\t" + str(individualarchive.getDownloadCount())
    elif x < 1:
        print '0'

Um es zu benutzen:

python ppastats.py webupd8team themes natty i386
Daker
quelle
2
sudo pip install launchpadlib && sudo pip install simplejson
OverCoder
Ich habe dies genommen und es ein wenig erweitert: gist.github.com/nathan-osman/b9158d058cc45916dcd20a591b66d0b4 Jetzt müssen Sie keine Binärdatei mehr angeben und erhalten eine schön formatierte Tabelle.
Nathan Osman
1

Mit ppastats ( http://wpitchoune.net/blog/ppastats/ ) können Sie einen HTML-Bericht erstellen, der Statistiken und Diagramme zur Anzahl der Downloads eines PPA enthält .

Hier ist ein Beispiel: http://wpitchoune.net/ppastats/ppa/otto-kesselgulasch/gimp/ .

Wenn Sie Ubuntu verwenden, können Sie es mit dem PPA-Befehl ppa: jfi / ppastats installieren:

sudo apt-add-repository ppa:jfi/ppastats
sudo apt-get update
sudo apt-get install ppastats

So generieren Sie den HTML-Bericht:

ppastats [PPA_OWNER] [PPA_NAME] -o [OUTPUT_DIR]
JeanFI
quelle
1
Es ist noch kein lebhaftes Paket verfügbar: /
Seth
ppastats kompiliert gut auf vivid, zumindest die Version 1.3.3 ( wpitchoune.net/ppastats/files/ppastats-1.3.3.tar.gz ). Auch die Ubuntu-Verpackung kann mit git-buildpackage aus dem folgenden git-Repository erstellt werden: git.wpitchoune.net/psensor-pkg-ubuntu.git . Ich werde es wahrscheinlich irgendwann öffentlich hochladen.
JeanFI
Ich habe gerade das letzte verfügbare Binärpaket installiert und es hat einwandfrei funktioniert. Ist Ihnen klar, dass Launchpad das Paket für eine neuere Version für Sie neu erstellen könnte?
Seth,
Es gibt kein yakkety-Paket :(
Seth
Ab heute ist die Anzahl auf dieser ppa für xenial i386 1. Es gibt einen Ruf Aspekt , ein Paket zu wissen , die Zählung b4 ist der Installation , dass dies nicht gut passieren .... nur sayin'
Rondo
1

Aus dem jfi/ppastatsPaket habe ich herausgefunden, wie die API funktioniert, und ein Benutzerskript (Greasemonkey / Tampermonkey) erstellt, das die Anzahl der Downloads neben Ihren Paketen übersichtlich auflistet. Stellen Sie sicher, dass Sie zur Ansicht "Alle Builds anzeigen" wechseln, zu der in Ihren Paketdetails zwei Links hinzugefügt wurden. Patches für Verbesserungen sind willkommen!

stefansundin
quelle
was? Wie funktioniert das? Wie ist das einfacher als die akzeptierte Antwort?
Kaz Wolfe
Es ist ein plattformübergreifendes Skript, das Sie in Ihrem Browser entweder mit der Erweiterung Greasemonkey (Firefox) oder der Erweiterung Tampermonkey (Chrome) ausführen. Ich würde sagen, dass es einfacher ist.
Stefan Sundin
Wo werden die Downloads gezählt? Ich sehe "Anzahl der Downloads anzeigen", aber wenn ich darauf klicke, sehe ich sie trotzdem nicht auf der Seite.
Seth
Seltsam. Ich habe die neueste Version mit Firefox und Chrome (Greasemonkey und Tampermonkey) getestet. Versuchen Sie, zu meiner PPA zu wechseln (für die ich sie erstellt habe): launchpad.net/~stefansundin/+archive/ubuntu/truecrypt/… In diesem Fall kann es zu Problemen mit einem Archiv kommen, das zwischen Ubuntu-Versionen kopiert wurde Möglicherweise sehen Sie einen Spinner, der niemals verschwindet. Ich werde versuchen, dies in einer späteren Version zu lösen.
Stefansundin
Ja, wenn du zu deiner PPA gehst, funktioniert das, aber meine zeigt absolut nichts . Es ist durchaus möglich , niemand noch heruntergeladen hat, aber ppastats scheint contradict dass: paste.ubuntu.com/8752766 (Leider habe ich nicht früher geantwortet habe, aber du hast nicht @fügen Sie mich , damit ich es jetzt nicht sah , bis )
Seth
0

Es gibt ein weiteres Python-Skript unter:

https://bugs.launchpad.net/launchpad/+bug/139855/comments/66

DL: https://bugs.launchpad.net/launchpad/+bug/139855/+attachment/3217345/+files/ppastats

Verwendung: ppastat.py [-h] [--all] [--arch ARCH] Benutzer [ppa [ppa ...]]

aasche
quelle
Willkommen bei AskUbuntu! Obwohl dies möglicherweise die Frage beantwortet, gibt es keine wirklichen Erklärungen, und dies ist möglicherweise besser als Kommentar.
Keine Zeit,
Benötigt es spezielle Abhängigkeiten? Hier bei Trusty scheitert es mit einem IndexError: list index out of rangeFehler.
Landroni