จะทราบจำนวนการดาวน์โหลดแพ็คเกจจาก PPA ได้อย่างไร


15

ฉันต้องการทราบจำนวนแพ็คเกจดาวน์โหลดที่ระบุใน PPA ตั้งแต่มีการเผยแพร่ครั้งแรก

ฉันจำได้ว่ามีข้อผิดพลาดเกี่ยวกับการรับเมตริกเหล่านี้บนเว็บ UI แต่เท่าที่ฉันรู้มันไม่เคยถูกนำไปใช้

แต่ฉันคิดว่าจำนวนการดาวน์โหลดสามารถทำได้ผ่านLaunchpad APIถ้าฉันเป็นเจ้าของ 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ตอนนี้คุณไม่จำเป็นต้องระบุไบนารีอีกต่อไปและคุณจะได้รับตารางที่จัดรูปแบบสวยงาม
Nathan Osman

หน่วยของการนับนี้คืออะไร รวม? ต่อเดือน? บางทีลิงก์ไปยังเอกสารอ้างอิงฟังก์ชั่นพื้นฐานอาจยอดเยี่ยม! ขอบคุณ!
Matifou

1

คุณสามารถสร้างรายงาน 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]

1
ยังไม่มีแพ็คเกจที่สดใสให้ใช้: /
Seth

ppastats รวบรวมข้อมูลได้ดีบนเวอร์ชั่นอย่างน้อย 1.3.3 ( wpitchoune.net/ppastats/files/ppastats-1.3.3.tar.gz ) อูบุนตูบรรจุภัณฑ์เกินไปก็สามารถสร้างขึ้นด้วย Git-buildpackage จากเก็บคอมไพล์ต่อไปนี้: git.wpitchoune.net/psensor-pkg-ubuntu.git ฉันอาจจะอัปโหลดแบบสาธารณะในบางช่วงเวลา
JeanFI

ฉันเพิ่งติดตั้งไบนารีแพคเกจสุดท้ายที่ใช้ได้ใช้งานได้ดี คุณรู้หรือไม่ว่าคุณมีแค่ Launchpad ที่จะสร้างแพ็คเกจใหม่สำหรับคุณ?
เซท

ไม่มีแพ็คเกจ yakkety :(
Seth

ณ วันนี้นับใน ppa สำหรับ xenial i386 นี้คือ 1 มีชื่อเสียงด้านการรู้นับ b4 ติดตั้งแพคเกจที่ไม่ผ่านได้เป็น .... เพียงพูด
Rondo

1

จากjfi/ppastatsแพคเกจฉันจัดการเพื่อหาว่า API ทำงานอย่างไรและฉันสร้าง userscript (Greasemonkey / Tampermonkey) ที่จะแสดงรายการจำนวนการดาวน์โหลดที่อยู่ถัดจากแพ็คเกจของคุณอย่างเรียบร้อย ตรวจสอบให้แน่ใจว่าได้ไปที่มุมมอง "ดูการสร้างทั้งหมด" ซึ่งมีการเพิ่มลิงก์สองรายการในรายละเอียดแพ็คเกจของคุณ ยินดีต้อนรับแพทช์สำหรับการปรับปรุง!


whut? มันทำงานอย่างไร วิธีนี้ง่ายกว่าคำตอบที่ยอมรับได้อย่างไร
Kaz Wolfe

เป็นสคริปต์ข้ามแพลตฟอร์มที่คุณเรียกใช้ในเบราว์เซอร์ของคุณด้วยส่วนขยาย Greasemonkey (Firefox) หรือส่วนขยาย Tampermonkey (Chrome) ฉันจะบอกว่ามันง่ายกว่า
stefansundin

การดาวน์โหลดจะถูกนับที่ใด ฉันเห็น "ดูจำนวนการดาวน์โหลด" แต่เมื่อฉันคลิกที่ฉันไม่เห็นพวกเขาต่อไปในหน้า ..
เซท

แปลก. ฉันทดสอบเวอร์ชันล่าสุดด้วยทั้ง Firefox และ Chrome (Greasemonkey และ Tampermonkey) ลองไปที่ PPA ของฉัน (ซึ่งเป็นที่ฉันทำเพื่อ): launchpad.net/~stefansundin/+archive/ubuntu/truecrypt/ ...... อาจมีปัญหาบางอย่างกับไฟล์เก็บถาวรที่ถูกคัดลอกระหว่างรุ่น ubuntu ในกรณีนี้ คุณอาจเห็นปินเนอร์ที่ไม่เคยหายไปไหน ฉันจะพยายามที่จะแก้ปัญหานี้ในรุ่นที่ใหม่กว่า
stefansundin

ใช่ไปทำงาน PPA ของคุณ แต่ของฉันไม่แสดงอะไรเลย เป็นไปได้ทั้งหมดยังไม่มีใครดาวน์โหลด แต่ ppastats ดูเหมือนจะขัดแย้งกันว่า: paste.ubuntu.com/8752766 (ขออภัยฉันไม่ได้ตอบก่อนหน้านี้ แต่คุณไม่ได้@รวมฉันดังนั้นฉันไม่เห็นมันจนกระทั่งตอนนี้ )
เซท

0

มีสคริปต์ไพ ธ อนอื่นที่:

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

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

การใช้งาน: ppastat.py [-h] [- ทั้งหมด] [--arch ARCH] ผู้ใช้ [ppa [ppa ... ]]


ยินดีต้อนรับสู่ AskUbuntu! แม้ว่าสิ่งนี้อาจตอบคำถามได้ แต่ก็ไม่มีคำอธิบายที่แท้จริงและสิ่งนี้อาจดีกว่าความคิดเห็น
ไม่มีเวลา

มันต้องมีการพึ่งพาพิเศษหรือไม่? ที่นี่ใน Trusty มันล้มเหลวด้วยIndexError: list index out of rangeข้อผิดพลาด
landroni
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.