def user_ready(username): if username.endswith(".php"): return False uh = UserHistory(username) # First, check to see if the file is fresh uh.load_if_possible() if uh.data_age() < settings.HISTORY_TTL: return uh.num_weeks() # Then, do a quick weeklist fetch to compare try: weeks = list(fetcher.weeks(username)) except AssertionError: # They probably don't exist return None present = True for start, end in weeks: if not uh.has_week(start): present = False break # If all weeks were present, update the timestamp if present: uh.set_timestamp() uh.save_default() return len(weeks) else: return False
import sys, os def usage(): print >> sys.stderr, "Usage: %s <filename.last> <action>" % sys.argv[0] try: filename = sys.argv[1] except IndexError: usage() sys.exit(1) try: action = sys.argv[2] except IndexError: usage() sys.exit(1) uh = UserHistory(None) uh.load(open(filename)) if action == "artists": print "\n".join(uh.artists.keys()) elif action == "weeks": print "\n".join(map(str, uh.weeks.keys())) elif action == "age": print uh.data_age() else: print >> sys.stderr, "Unknown action" sys.exit(1)
from lastgui.storage import UserHistory import sys, os def usage(): print >> sys.stderr, "Usage: %s <filename.last> <action>" % sys.argv[0] try: filename = sys.argv[1] except IndexError: usage() sys.exit(1) try: action = sys.argv[2] except IndexError: usage() sys.exit(1) uh = UserHistory(None) uh.load(open(filename)) if action == "artists": print "\n".join(uh.artists.keys()) elif action == "weeks": print "\n".join(map(str, uh.weeks.keys())) elif action == "age": print uh.data_age() else: print >> sys.stderr, "Unknown action" sys.exit(1)