web-dev-qa-db-ja.com

PPAからパッケージのダウンロード数を調べる方法は?

特定のパッケージがPPAに最初に公開されてから何回ダウンロードされたかを知りたいのですが。

Web UIでこれらのメトリックを取得することについて バグ があったことを覚えていますが、私が知る限り、実装されていません。

しかし、私がそのPPAの所有者であれば、ダウンロード数は Launchpad API で取得できると思います。ポインタはありますか?

15
David Planella

このスクリプトを確認してください。

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

jfi/ppastatsパッケージから、APIがどのように機能するかを把握することができました。そして、 ユーザースクリプトを作成しました (Greasemonkey/Tampermonkey)。パッケージの詳細に2つのリンクが追加された[すべてのビルドを表示]ビューに必ず移動してください。改善のためのパッチを歓迎します!

1
stefansundin

Ppastats( http://wpitchoune.net/blog/ppastats/ )を使用して、PPAのダウンロード数に関する統計とグラフを含むHTMLレポートを生成できます。

以下に例を示します。 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
JeanFI

別の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 ...]]

0
aasche