Как узнать количество загрузок пакета из PPA?

Я хотел бы знать, сколько загрузок данного пакета в PPA было с момента его первой публикации.

Я помню, что была ошибка в получении этих метрик в веб-интерфейсе, но, насколько я знаю, он так и не был реализован.

Но я думаю, что количество загрузок можно получить через API Launchpad, если я являюсь владельцем этого PPA. Есть указатели?

4 ответа

Решение

Проверьте этот скрипт:

#!/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'

Чтобы использовать это:

python ppastats.py webupd8team themes natty i386

От jfi/ppastats Пакет, мне удалось выяснить, как работает API, и я сделал скрипт пользователя (Greasemonkey/Tampermonkey), который аккуратно перечислит количество загрузок рядом с вашими пакетами. Обязательно перейдите в представление "Просмотр всех сборок", на которое есть две ссылки, добавленные в детали вашего пакета. Патчи для улучшений приветствуются!

Вы можете создать HTML-отчет, содержащий статистику и графики о количестве загрузок PPA с помощью ppastats ( http://wpitchoune.net/blog/ppastats/).

Вот пример: http://wpitchoune.net/ppastats/ppa/otto-kesselgulasch/gimp/.

Если вы используете Ubuntu, вы можете установить его с помощью PPA ppa:jfi/ppastats:

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

Затем для генерации отчета в формате HTML:

ppastats [PPA_OWNER] [PPA_NAME] -o [OUTPUT_DIR]

Есть еще один скрипт Python, доступный по адресу:

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

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

использование: ppastat.py [-h] [--all] [--arch ARCH] пользователь [ppa [ppa...]]

Другие вопросы по тегам