Skip to content

Commit 41b2936

Browse files
committed
format code
1 parent 73bbb3a commit 41b2936

File tree

1 file changed

+19
-17
lines changed

1 file changed

+19
-17
lines changed

download.py

+19-17
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
#!/usr/bin/env python
22
# encoding: utf-8
3+
import re
4+
import sys
5+
import os
36
import requests
47
from lxml import etree
58
from StringIO import StringIO
6-
import re, sys, os
79
from ConfigParser import ConfigParser
810

911
reload(sys)
@@ -13,7 +15,7 @@
1315
"\u002D":'-','\u003B':';', '\u003D':'=',"\u003C":'<', "\u003E":'>'}
1416
BASE_URL = "https://leetcode.com"
1517

16-
def getConfig():
18+
def get_config():
1719
config = ConfigParser()
1820
config.read('config.ini')
1921
usr = config.get('info', 'user')
@@ -28,7 +30,7 @@ def getConfig():
2830
return usr, passwd, mode
2931

3032
def login():
31-
usr, passwd, mode = getConfig()
33+
usr, passwd, mode = get_config()
3234
login_url = "https://leetcode.com/accounts/login/"
3335
s = requests.session()
3436
resp = s.get(login_url)
@@ -55,12 +57,12 @@ def login():
5557

5658
return s, req.text
5759

58-
def extractQuestion(html):
60+
def extract_question(html):
5961
parser = etree.HTMLParser()
6062
tree = etree.parse(StringIO(html.encode('utf-8')), parser)
6163
trNodes = tree.findall(".//tr")
62-
allProblems = []
63-
solvedProblems = []
64+
all_problems = []
65+
solved_problems = []
6466
for ele in trNodes:
6567
if len(ele) != 5:
6668
continue
@@ -73,12 +75,12 @@ def extractQuestion(html):
7375
ac_rate = ele[3].text
7476
level = ele[4].text
7577

76-
allProblems.append(Problem(status, id,
78+
all_problems.append(Problem(status, id,
7779
href, title, ac_rate, level))
7880
if status != "None":
79-
solvedProblems.append(Problem(status, id,
81+
solved_problems.append(Problem(status, id,
8082
href, title, ac_rate, level))
81-
return allProblems, solvedProblems
83+
return all_problems, solved_problems
8284

8385
def getSubmissionResults(problem, session):
8486
link = BASE_URL + problem.href + "submissions"
@@ -137,7 +139,7 @@ def addTable2Report(problem, file, tableHTML):
137139

138140

139141

140-
def getCode(session, link):
142+
def get_code(session, link):
141143
resp = session.get(link)
142144
scriptNodes = findAllElements(resp, 'script')
143145
if not scriptNodes:
@@ -150,7 +152,7 @@ def getCode(session, link):
150152
if result:
151153
return result.group(1), result.group(2)
152154

153-
def formatCode(code, char_map):
155+
def format_code(code, char_map):
154156
code = code.replace('\u000D\u000A', '\n')
155157
for key in char_map:
156158
if key in code:
@@ -166,7 +168,7 @@ def writeCode2file(lang, code, id, title, no, location):
166168
fh.write(code)
167169
fh.close()
168170

169-
def makeDir(dirName):
171+
def make_dir(dirName):
170172
if not os.path.exists(os.path.join(os.getcwd(),dirName)):
171173
os.makedirs(os.path.join(os.getcwd(), dirName))
172174

@@ -188,16 +190,16 @@ def __init__(self, status, id, href, title, ac_rate, level):
188190
def main():
189191
session, html = login()
190192
createReport()
191-
makeDir('solutions')
192-
allProblems, solvedProblems = extractQuestion(html)
193-
for problem in solvedProblems:
193+
make_dir('solutions')
194+
all_problems, solved_problems = extract_question(html)
195+
for problem in solved_problems:
194196
codeLinks, table_nodes = getSubmissionResults(problem, session)
195197
addTable2Report(problem, 'report.html', getResultTable(table_nodes))
196198
count=0
197199
for link in codeLinks:
198200
count += 1
199-
lang, code = getCode(session, BASE_URL + link)
200-
code = formatCode(code, char_map)
201+
lang, code = get_code(session, BASE_URL + link)
202+
code = format_code(code, char_map)
201203
writeCode2file(lang, code, problem.id, problem.title, count, 'solutions')
202204
print "Done with problem " + problem.title
203205
print

0 commit comments

Comments
 (0)