Як дізнатися кількість завантажень пакету з PPA?


15

Мені хотілося б знати, скільки завантажень даного пакету в PPA відбулося з моменту його публікації.

Я пам’ятаю, що в ньому з’явилася помилка щодо отримання цих показників у веб-інтерфейсі, але, наскільки я знаю, він ніколи не реалізовувався.

Але я думаю, що кількість завантажень все ж можна отримати за допомогою API Launchpad, якщо я є власником цього PPA. Якісь покажчики?

Відповіді:


17

Перевірте цей сценарій:

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

2
sudo pip install launchpadlib && sudo pip install simplejson
OverCoder

Я взяв це і трохи розширив його: gist.github.com/nathan-osman/b9158d058cc45916dcd20a591b66d0b4 Тепер вам більше не потрібно вказувати бінарний файл, і ви отримуєте добре відформатовану таблицю.
Натан Осман

Яка одиниця цього рахунку? Всього? На місяць? Можливо, посилання на документацію щодо основних функцій було б чудовим! Спасибі!
Матифу

1

Ви можете створити HTML-звіт, що містить статистику та графіки щодо кількості завантажень PPA із написаннями ( 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]

1
Є ще не доступний яскравий пакет: /
Сет

ppastats добре збирає яскраві принаймні версії 1.3.3 ( wpitchoune.net/ppastats/files/ppastats-1.3.3.tar.gz ). Упаковка ubuntu теж може бути складена за допомогою git-buildpackage з наступного сховища git: git.wpitchoune.net/psensor-pkg-ubuntu.git . Я, певно, завантажую його в якийсь момент публічно.
JeanFI

Я щойно встановив останній доступний бінарний пакет, працював чудово. Ви усвідомлюєте, що можете просто змусити Launchpad відновити пакет для нової версії для вас?
Сет

Там немає yakkety пакета :(
Сет

На сьогоднішній день, кількість цього ppa для xenial i386 є 1. Існує аспект репутації, коли знати кількість b4, встановлюючи пакет, який не проходить добре .... просто кажу
Рондо,

1

З jfi/ppastatsпакета мені вдалося зрозуміти, як працює API, і я створив користувальницький сценарій (Greasemonkey / Tampermonkey), який чітко перелічить кількість завантажень поруч із вашими пакунками. Обов’язково перейдіть до перегляду «Переглянути всі збірки», до якого в деталях вашого пакета додано два посилання. Патчі для поліпшень вітаються!


що? Як це працює? Чим це простіше, ніж прийнята відповідь?
Каз Вулф

Це сценарій крос-платформи, який ви запускаєте у своєму браузері або з розширенням Greasemonkey (Firefox), або з розширенням Tampermonkey (Chrome). Я б сказав, що це простіше.
stefansundin

Де кількість завантажень? Я бачу "перегляд кількості завантажень", але коли натискаю, що я їх не бачу на сторінці ..
Seth

Дивно. Я протестував останню версію з Firefox та Chrome (Greasemonkey і Tampermonkey). Спробуйте перейти до мого PPA (це той, для якого я його створив): launchpad.net/~stefansundin/+archive/ubuntu/truecrypt/… Можливо, будуть проблеми з архівом, скопійованим між версіями ubuntu, і в цьому випадку ви можете побачити спінер, який ніколи не згасне. Я спробую це вирішити в більш пізній версії.
stefansundin

Так, переходити до вашого PPA працює, але моя не показує абсолютно нічого . Цілком можливо, ніхто ще не завантажив її, але, схоже, ppastats суперечить цьому: paste.ubuntu.com/8752766 (Вибачте, я не відповів раніше, але ви не @включили мене, щоб я не бачив його досі )
Сет

0

Є ще один сценарій 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 ...]]


Ласкаво просимо до AskUbuntu! Хоча це, можливо, може відповісти на питання, реальних пояснень немає, і це може бути краще як коментар.
Немає часу

Чи потрібні якісь особливі залежності? Тут на Trusty це не вдається з IndexError: list index out of rangeпомилкою.
landroni
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.