diff --git a/bdfr/connector.py b/bdfr/connector.py index d0c4ac2..6d7bc64 100644 --- a/bdfr/connector.py +++ b/bdfr/connector.py @@ -301,7 +301,7 @@ class RedditConnector(metaclass=ABCMeta): def get_submissions_from_link(self) -> list[list[praw.models.Submission]]: supplied_submissions = [] for sub_id in self.args.link: - if len(sub_id) == 6: + if len(sub_id) in (6, 7): supplied_submissions.append(self.reddit_instance.submission(id=sub_id)) else: supplied_submissions.append(self.reddit_instance.submission(url=sub_id)) diff --git a/bdfr/site_downloaders/download_factory.py b/bdfr/site_downloaders/download_factory.py index df2a0ea..6237ecd 100644 --- a/bdfr/site_downloaders/download_factory.py +++ b/bdfr/site_downloaders/download_factory.py @@ -28,7 +28,7 @@ class DownloadFactory: sanitised_url = DownloadFactory.sanitise_url(url) if re.match(r"(i\.|m\.)?imgur", sanitised_url): return Imgur - elif re.match(r"(i\.)?(redgifs|gifdeliverynetwork)", sanitised_url): + elif re.match(r"(i\.|thumbs\d\.)?(redgifs|gifdeliverynetwork)", sanitised_url): return Redgifs elif re.match(r".*/.*\.[a-zA-Z34]{3,4}(\?[\w;&=]*)?$", sanitised_url) and not DownloadFactory.is_web_resource( sanitised_url diff --git a/tests/site_downloaders/test_download_factory.py b/tests/site_downloaders/test_download_factory.py index bb09471..062635c 100644 --- a/tests/site_downloaders/test_download_factory.py +++ b/tests/site_downloaders/test_download_factory.py @@ -40,6 +40,7 @@ from bdfr.site_downloaders.youtube import Youtube ("https://youtube.com/watch?v=Gv8Wz74FjVA", Youtube), ("https://redgifs.com/watch/courageousimpeccablecanvasback", Redgifs), ("https://www.gifdeliverynetwork.com/repulsivefinishedandalusianhorse", Redgifs), + ("https://thumbs4.redgifs.com/DismalIgnorantDrongo-mobile.mp4", Redgifs), ("https://youtu.be/DevfjHOhuFc", Youtube), ("https://m.youtube.com/watch?v=kr-FeojxzUM", Youtube), ("https://dynasty-scans.com/system/images_images/000/017/819/original/80215103_p0.png?1612232781", Direct), diff --git a/tests/test_connector.py b/tests/test_connector.py index 9681e4b..bf781e2 100644 --- a/tests/test_connector.py +++ b/tests/test_connector.py @@ -167,6 +167,7 @@ def test_create_authenticator(downloader_mock: MagicMock): ("lvpf4l",), ("lvpf4l", "lvqnsn"), ("lvpf4l", "lvqnsn", "lvl9kd"), + ("1000000",), ), ) def test_get_submissions_from_link(