From a8c4e84086766a9f8a8e69bcb5ce98bf9b81819e Mon Sep 17 00:00:00 2001 From: KevinMidboe Date: Thu, 2 Nov 2017 15:16:13 +0100 Subject: [PATCH] Changed import to not import entire datetime library. --- torrentSearch/utils.py | 50 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 torrentSearch/utils.py diff --git a/torrentSearch/utils.py b/torrentSearch/utils.py new file mode 100644 index 0000000..2e429f8 --- /dev/null +++ b/torrentSearch/utils.py @@ -0,0 +1,50 @@ +#!/usr/bin/env python3.6 +# -*- coding: utf-8 -*- +# @Author: KevinMidboe +# @Date: 2017-11-01 15:57:23 +# @Last Modified by: KevinMidboe +# @Last Modified time: 2017-11-02 15:14:31 + +import re +from datetime import datetime + +def sanitize(string, ignore_characters=None, replace_characters=None): + """Sanitize a string to strip special characters. + + :param str string: the string to sanitize. + :param set ignore_characters: characters to ignore. + :return: the sanitized string. + :rtype: str + + """ + # only deal with strings + if string is None: + return + + replace_characters = replace_characters or '' + + ignore_characters = ignore_characters or set() + + characters = ignore_characters + if characters: + string = re.sub(r'[%s]' % re.escape(''.join(characters)), replace_characters, string) + + return string + +def return_re_match(string, re_statement): + if string is None: + return + + m = re.search(re_statement, string) + if 'Y-day' in m.group(): + return datetime.now().strftime('%m-%d %Y') + return sanitize(m.group(), '\xa0', ' ') + + +# Can maybe be moved away from this class +# returns a number that is either the value of multiple_pages +# or if it exceeds total_pages, return total_pages. +def pagesToCount(multiple, total): + if (multiple > total): + return total + return multiple \ No newline at end of file