def parse_article(self, subject, *args, **kwargs):
"""
Takes a an article header and returns it's parsed content if it's
successful. Otherwise it returns None.
"""
matched = NZB_SUBJECT_PARSE.match(subject)
if matched is None:
# subject is not parsable
return None
results = {}
# Trim results
if matched.group('desc') is not None:
results['desc'] = re.sub('[\s-]+$', '', matched.group('desc'))
if matched.group('fname') is not None:
results['fname'] = matched.group('fname').strip()
# Support conversion of integers
for _attr in ['index', 'count', 'yindex', 'ycount', 'size']:
if matched.group(_attr) is not None:
results[_attr] = int(matched.group(_attr))
return results
评论列表
文章目录