SEASONEPISODE_REGEXP = ur"^(?P<series_name>([A-Za-z0-9_()-]+(\.| ))+)(S|- \[?)(?P<season>\d+)(E|x)(?P<episode>\d+).*\.(?P<extension>[a-z0-9]*)$"
sep_re = re.compile(SEASONEPISODE_REGEXP)
+def _tryint(s):
+ """Renvoie int(s) ou s si échec."""
+ try:
+ return int(s)
+ except:
+ return s
+
def get_titles(filename, debug=False, oneintwo=False):
"""Récupère les titres des épisodes dans le fichier"""
text = open(filename).read()
if oneintwo:
# On enlève une ligne sur deux
text = re.sub("(.*\n).*\n", r'\1', text)
- titles = re.findall('^[0-9\s]+"(.*?)"', text, flags=re.MULTILINE)
+ titles = re.findall('^([0-9\s]+)"(.*?)"', text, flags=re.MULTILINE)
+ titles = {_tryint(n) : title for (n, title) in titles}
if debug:
print "Titres :"
pprint.pprint(titles)