#!/usr/bin/python import json import subprocess import sys from softwarecenter.backend.piston.rnrclient import RatingsAndReviewsAPI if __name__ == "__main__": rnrclient = RatingsAndReviewsAPI() piston_review_stats = rnrclient.review_stats(origin="ubuntu") # means 1 2 3 4 5 stars histogram_total = [0, 0, 0, 0, 0] for s in piston_review_stats: histogram = json.loads(s.histogram) for i in range(5): histogram_total[i] += histogram[i] print "overall distribution: ", histogram_total # write out data file f = open("reviews-spread.dat", "w") for i in range(5): f.write("%i %i\n" % (i + 1, histogram_total[i])) f.close() # write out gnuplot f = open("reviews-spread.gnuplot", "w") f.write(""" set title "Reviews spread"
if options.debug: LOG.setLevel(logging.DEBUG) cachedir = os.path.join(SOFTWARE_CENTER_CACHE_DIR, "rnrclient") rnrclient = RatingsAndReviewsAPI(cachedir=cachedir) kwargs = {"origin": options.origin, "distroseries": options.distroseries, } if options.days_delta: kwargs["days"] = int(options.days_delta) # depending on the time delta, use a different call piston_review_stats = [] try: piston_review_stats = rnrclient.review_stats(**kwargs) except: LOG.exception("get_review_stats") sys.exit(1) # useful for debugging if options.no_pickle: print "\n".join(["pkgname=%s total=%s avg=%s" % (s.package_name, s.ratings_total, s.ratings_average) for s in piston_review_stats]) else: # print to stdout where its consumed by the parent try: print pickle.dumps(piston_review_stats) except IOError:
#!/usr/bin/python import json import subprocess import sys from softwarecenter.backend.piston.rnrclient import RatingsAndReviewsAPI if __name__ == "__main__": rnrclient = RatingsAndReviewsAPI() piston_review_stats = rnrclient.review_stats(origin="ubuntu") # means 1 2 3 4 5 stars histogram_total = [0, 0, 0, 0, 0] for s in piston_review_stats: histogram = json.loads(s.histogram) for i in range(5): histogram_total[i] += histogram[i] print "overall distribution: ", histogram_total # write out data file f=open("reviews-spread.dat", "w") for i in range(5): f.write("%i %i\n" % (i+1, histogram_total[i])) f.close() # write out gnuplot f=open("reviews-spread.gnuplot", "w") f.write(""" set title "Reviews spread"
LOG.setLevel(logging.DEBUG) cachedir = os.path.join(SOFTWARE_CENTER_CACHE_DIR, "rnrclient") rnrclient = RatingsAndReviewsAPI(cachedir=cachedir) kwargs = { "origin": options.origin, "distroseries": options.distroseries, } if options.days_delta: kwargs["days"] = int(options.days_delta) # depending on the time delta, use a different call piston_review_stats = [] try: piston_review_stats = rnrclient.review_stats(**kwargs) except: LOG.exception("get_review_stats") sys.exit(1) # useful for debugging if options.no_pickle: print "\n".join([ "pkgname=%s total=%s avg=%s" % (s.package_name, s.ratings_total, s.ratings_average) for s in piston_review_stats ]) else: # print to stdout where its consumed by the parent try: print pickle.dumps(piston_review_stats)