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


15

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

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

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

回答:


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

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
鮮やかなパッケージはまだありません:/
セス

ppastatsは、少なくともバージョン1.3.3(wpitchoune.net/ppastats/files/ppastats-1.3.3.tar.gz)で鮮明にコンパイルされています。Ubuntuのパッケージも、それは次のgitリポジトリからのgit-buildpackageで構築することができます:git.wpitchoune.net/psensor-pkg-ubuntu.git。おそらくいつか公にアップロードするでしょう。
JeanFI

最後に利用可能なバイナリパッケージをインストールしたところ、正常に動作しました。Launchpadでパッケージを再構築して新しいリリースに合わせて再構築できることを理解していますか?
セス

yakketyパッケージはありません:(
セス

今日の時点で、xenial i386用このPPAのカウントは、これは単にコト....うまく通らないというパッケージをインストールカウントB4を知ることに評判の側面がある1です
ロンド

1

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


なに?これはどのように作動しますか?これは、受け入れられている答えよりも簡単ですか?
カズウルフ14

Greasemonkey拡張機能(Firefox)またはTampermonkey拡張機能(Chrome)を使用してブラウザーで実行するクロスプラットフォームスクリプトです。私はそれが簡単だと言うでしょう。
ステファンスンディン14

ダウンロードはどこでカウントされますか?..私は、「ビューのダウンロード回数」を参照してください。しかし、私は私がページにとにかくそれらを見ていないことをクリックしたときに
セス・

奇妙な。FirefoxとChrome(GreasemonkeyとTampermonkey)の両方で最新バージョンをテストしました。(私はそれのために作られたものである)私のPPAに行くしてみてください。launchpad.net/~stefansundin/+archive/ubuntu/truecrypt/... その場合には、それはUbuntuのバージョン間でコピーされたアーカイブのいくつかの問題を有していてもよく消えないスピナーが表示される場合があります。これは後のバージョンで解決しようとします。
ステファンサンディン14年

はい、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] user [ppa [ppa ...]]


AskUbuntuへようこそ!これはおそらく質問に答えるかもしれませんが、実際の説明はないため、コメントとしてお勧めします。
時間がない

特別な依存関係が必要ですか?ここで、TrustyではIndexError: list index out of rangeエラーで失敗します。
ランドローニ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.