From e1492426c345e153664968f87feb782cffa68198 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 29 May 2012 19:30:09 +0200 Subject: Initial commit for grabbing package data --- packages.py | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ packages.py~ | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 120 insertions(+) create mode 100644 packages.py create mode 100644 packages.py~ diff --git a/packages.py b/packages.py new file mode 100644 index 0000000..a3cebf5 --- /dev/null +++ b/packages.py @@ -0,0 +1,60 @@ +import os +import sys +import urllib2 +import tarfile + +def grab(url): + data = urllib2.urlopen(url) + localFile = open('APKINDEX.tar.gz', 'w') + localFile.write(data.read()) + localFile.close() + + tar = tarfile.open('APKINDEX.tar.gz') + tar.extract('APKINDEX', path=".") + tar.close() + +# fobj = open('APKINDEX', 'r') +# for line in fobj: +# if line.startswith('o'): +# count = count + 1 +# fobj.close() +# print "Total: ", count + + countStd = 0 + countDev = 0 + countDoc = 0 + countLib = 0 + total = 0 + + fobj = open('APKINDEX', 'r') + for line in fobj: + if line.startswith('P'): + if line[len(line)-4:len(line)-1] == 'dev': + countDev = countDev + 1 + elif line[len(line)-4:len(line)-1] == 'doc': + countDoc = countDoc + 1 + elif line[len(line)-5:len(line)-1] == 'libs': + countLib = countLib + 1 + else: + countStd = countStd + 1 + fobj.close() + total = countStd + countDev + countDoc + countLib + numbers = (countStd, countDev, countDoc, countLib, total) + return numbers + +def clean(): + os.remove('APKINDEX.tar.gz') + os.remove('APKINDEX') + +def main(argv): + url = 'http://nl.alpinelinux.org/alpine/v%s/packages/main/APKINDEX.tar.gz' % argv + #url = 'http://ancient.alpinelinux.org/alpine/v%s/apks/INDEX.md5.gz' % argv + numbers = grab(url) + + print "| '''%s'''\n| %s\n| %s\n| %s\n| %s\n| %s\n|-" \ + % (argv, numbers[4], numbers[0], numbers[1], numbers[2], numbers[3]) + + clean() + +if __name__ == "__main__": + main(sys.argv[1]) diff --git a/packages.py~ b/packages.py~ new file mode 100644 index 0000000..395d6f4 --- /dev/null +++ b/packages.py~ @@ -0,0 +1,60 @@ +import os +import sys +import urllib2 +import tarfile + +def grab(url): + data = urllib2.urlopen(url) + localFile = open('APKINDEX.tar.gz', 'w') + localFile.write(data.read()) + localFile.close() + + tar = tarfile.open('APKINDEX.tar.gz') + tar.extract('APKINDEX', path=".") + tar.close() + +# fobj = open('APKINDEX', 'r') +# for line in fobj: +# if line.startswith('o'): +# count = count + 1 +# fobj.close() +# print "Total: ", count + + countStd = 0 + countDev = 0 + countDoc = 0 + countLib = 0 + total = 0 + + fobj = open('APKINDEX', 'r') + for line in fobj: + if line.startswith('P'): + if line[len(line)-4:len(line)-1] == 'dev': + countDev = countDev + 1 + elif line[len(line)-4:len(line)-1] == 'doc': + countDoc = countDoc + 1 + elif line[len(line)-5:len(line)-1] == 'libs': + countLib = countLib + 1 + else: + countStd = countStd + 1 + fobj.close() + total = countStd + countDev + countDoc + countLib + numbers = (countStd, countDev, countDoc, countLib, total) + return numbers + +def clean(): + os.remove('APKINDEX.tar.gz') + os.remove('APKINDEX') + +def main(argv): + #url = 'http://nl.alpinelinux.org/alpine/v%s/packages/main/APKINDEX.tar.gz' % argv + url = 'http://ancient.alpinelinux.org/alpine/v%s/apks/INDEX.md5.gz' % argv + numbers = grab(url) + + print "| '''%s'''\n| %s\n| %s\n| %s\n| %s\n| %s\n|-" \ + % (argv, numbers[4], numbers[0], numbers[1], numbers[2], numbers[3]) + + clean() + +if __name__ == "__main__": + main(sys.argv[1]) -- cgit v1.2.3