Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import urllib
- import json
- import sys
- def getGenres(username):
- genres = {}
- f = urllib.urlopen('http://mal-api.com/animelist/%s' % username)
- list = json.loads(f.read())
- for anime in list[u'anime']:
- n = urllib.urlopen('http://mal-api.com/anime/%d' % anime[u'id'])
- info = json.loads(n.read())
- for genre in info[u'genres']:
- if not genre in genres:
- genres[genre] = 1
- else:
- genres[genre] += 1
- return genres
- def sortGenres(genres):
- import operator
- return sorted(genres.iteritems(), key=operator.itemgetter(1))[::-1]
- def printGenres(genres):
- sorted_genres = sortGenres(genres)
- for item in sorted_genres:
- print '%s: %d' % item
- def saveGenres(genres, path):
- sorted_genres = sortGenres(genres)
- with open(path, 'w') as f:
- for item in sorted_genres:
- f.write('%s: %d\n' % item)
- if __name__ == '__main__':
- if len(sys.argv) == 1:
- print 'Pass the username to check as an arguement.'
- print 'Optional: Pass as output file like -o=output.txt before the username'
- else:
- for arg in sys.argv:
- if arg.startswith('-o'):
- path = arg.split('=')[1]
- saveGenres(getGenres(sys.argv[-1]), path)
- sys.exit()
- printGenres(getGenres(sys.argv[-1]))
Advertisement
Add Comment
Please, Sign In to add comment