Created
June 6, 2013 12:53
-
-
Save anonymous/5721264 to your computer and use it in GitHub Desktop.
Watch tennis in the terminal by PH and pops. Quick'n'dirty
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python | |
import requests | |
import time | |
import sys | |
ua = 'Mozilla/5.0 (Windows NT 6.0) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1' | |
referer = 'http://www.lequipe.fr/Tennis/Directs' | |
def getData(url): | |
req = requests.get(url, headers={'referer': referer, 'user-agent': ua}) | |
return req.json() | |
format_name = lambda x: "{PRENOM} {NOM}".format(**x) # fonction anonyme | |
# ** permet d'utiliser un dict comme arguments nommés * pour les list | |
def getResults(url): | |
data = getData(url) | |
out = "" | |
max_name_length = 0 | |
# For prettier formatting | |
for player in ['1', '2']: | |
player_length = len(format_name(data['JOUEURS']['JOUEUR%s' % (player,)])) | |
if player_length > max_name_length: | |
max_name_length = player_length | |
max_name_length += 5 # Add space for service | |
for player in ['1', '2']: | |
service = "" | |
name = format_name(data['JOUEURS']['JOUEUR%s' % (player,)]) | |
if data['JOUEURS']['SERVICE'] == player: | |
service = "(S) " | |
title_line = "%s %s" % (service, name) | |
out += '{:>{max_name_length}}'.format(title_line, max_name_length=max_name_length) # > to align on the right with max_name_length spacing (http://docs.python.org/2/library/string.html?highlight=string%20common%20string%20operations#format-string-syntax) | |
out += " | " .join([data['JOUEURS']['SET%s' % (player,) ][set_nb] for set_nb in ['1', '2', '3', '4', '5']]) # Join similaire a implode en PHP | |
out += "\n" | |
out += 40*"-" | |
print out | |
def getGames(): | |
data = getData('http://www.lequipe.fr/directs/empreintes/checkTennis.json') | |
return [ "%s/%s/%s" % (key.split('-')[0], key[-2:], key.split('-')[1]) for key in data] | |
if __name__=='__main__': # Permet d'importer les fonctions dans un autre prog dans executer ce code | |
while True: | |
sys.stdout.flush() | |
arr = getGames() | |
for url in arr: | |
getResults("http://www.lequipe.fr/directs/empreintes/" + url + ".json") | |
time.sleep(10) | |
sys.stdout.write("\x1b[1A"*len(arr)*3) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment