Mercurial > repo
view bin/wl @ 9954:fb3529990ed4
<oerjan> ` echo \'121:122 194:196 770:771 1000:1001 1493 1497 2113:2114 3341:3343 4530:4531 5136:5137 5642:5643 5895 5897 8669:8678 9070:9071 9074:9075\' | xargs -n 1 >share/scowrevs
author | HackBot |
---|---|
date | Mon, 12 Dec 2016 03:24:20 +0000 |
parents | e037173e0012 |
children |
line wrap: on
line source
#!/usr/bin/env python import os import sys import json import urllib2 proxy_handler = urllib2.ProxyHandler({'http': os.environ['http_proxy']}) opener = urllib2.build_opener(proxy_handler) urllib2.install_opener(opener) def lose(): print 'You get NOTHING! You LOSE! Good DAY sir!' sys.exit() def eels(): print 'My hovercraft is full of eels.' sys.exit() if len(sys.argv) > 2: args = sys.argv[1:] elif len(sys.argv) == 2: args = sys.argv[1].split() else: lose() if len(args) == 2: from_lang = args[0] to_lang = 'en' word = args[1] elif len(args) == 3: from_lang = args[0] to_lang = args[1] word = args[2] else: lose() def query(continue_id): url = 'http://%s.wikipedia.org/w/api.php?format=json&action=query&' \ 'redirects=1&titles=%s&prop=langlinks' % (from_lang, word) if continue_id: url += '&llcontinue=' + continue_id try: response = urllib2.urlopen(url).read() except urllib2.URLError, e: print e.reason sys.exit() return json.loads(response) continue_id = None while True: q = query(continue_id) if '-1' in q['query']['pages']: eels() page = q['query']['pages'].values()[0] if 'langlinks' not in page: eels() for link in q['query']['pages'].values()[0]['langlinks']: if link['lang'] == to_lang: print link['*'].encode('utf-8') sys.exit() if 'query-continue' in q: continue_id = q['query-continue']['langlinks']['llcontinue'] else: eels()