From 185cfede25dc32da7a48d4e261ce68617b545791 Mon Sep 17 00:00:00 2001 From: cathartyc <67878876+cathartyc@users.noreply.github.com> Date: Wed, 28 Feb 2024 14:14:21 +0100 Subject: [PATCH] fix url substring sanitization, close #79 --- utils/shared_functions.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/utils/shared_functions.py b/utils/shared_functions.py index 0cc981b..29753a0 100644 --- a/utils/shared_functions.py +++ b/utils/shared_functions.py @@ -64,12 +64,15 @@ def clean_links(message: str) -> str: words = message.strip().split(' ') for i, word in enumerate(words): parsing = urlparse(word) - if parsing.netloc.endswith('amzn.eu'): + netloc = parsing.netloc + if netloc == 'amzn.eu': cleaned_link = requests.get(word).url - elif parsing.netloc.endswith('amazon.com') or parsing.netloc.endswith('amazon.it'): + elif (netloc.endswith('.amazon.com') or netloc.endswith('.amazon.it') or + netloc == 'amazon.com' or netloc == 'amazon.it'): parsing = parsing._replace(params='', query='') cleaned_link = urlunparse(parsing) - elif parsing.netloc.endswith('youtube.com') or parsing.netloc.endswith('youtu.be'): + elif (netloc.endswith('.youtube.com') or netloc.endswith('.youtu.be') or + netloc == 'youtube.com' or netloc == 'youtu.be'): query = parse_qs(parsing.query) try: del query['si']