如何从PPA中找出包下载次数?
我想知道自首次发布以来,PPA中给定包的下载量是多少。
我记得有一个关于在Web UI上获取这些指标的错误 ,但据我所知,它从未实现过。
但是,如果我是PPA的所有者,我认为可以通过Launchpad API获得下载次数。 有什么指针吗?
看看这个脚本:
#!/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
您可以生成一个HTML报告,其中包含有关使用ppastats的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]
从jfi/ppastats
包中,我设法弄清楚API是如何工作的,并且我制作了一个用户脚本 (Greasemonkey / Tampermonkey),它将整齐地列出你的包旁边的下载计数。 确保转到“查看所有版本”视图,在您的包详细信息中添加了两个链接。 欢迎提供改进补丁!
还有另一个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 …]]