Skip to content

Instantly share code, notes, and snippets.

@alirezaomidi
Created November 26, 2016 14:59
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save alirezaomidi/fefff98dbe87a2bf58d4d15f7dbf4347 to your computer and use it in GitHub Desktop.
Save alirezaomidi/fefff98dbe87a2bf58d4d15f7dbf4347 to your computer and use it in GitHub Desktop.
ACM ICPC Tehran Site University Ranking Extractor
from bs4 import BeautifulSoup
import requests
import re
import ast
import sys
URL = 'http://icpc.sharif.edu/acmicpc%s/scoreboard/' % sys.argv[1][-2:]
r = requests.get(URL)
soup = BeautifulSoup(r.text, 'html5lib')
m = re.search(r'(?<=var rows = ).*(?=;)', soup.text)
scoreboard = ast.literal_eval(m.group(0))
universities = set()
print('{:<30}: {}'.format('Team Name', 'Ranking'))
print('-'*40)
for i in scoreboard:
uni = re.match(r'.*(?=:)', i[1]).group(0)
team = ''.join(i[1].split(':')[1:]).strip()
universities.add(uni)
print('{:<30}: {}'.format(team, len(universities)))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment