diff --git a/server/entertainment_decider/extractors/collection/youtube.py b/server/entertainment_decider/extractors/collection/youtube.py index 025d1f0..922d2ed 100644 --- a/server/entertainment_decider/extractors/collection/youtube.py +++ b/server/entertainment_decider/extractors/collection/youtube.py @@ -22,9 +22,21 @@ DataType: TypeAlias = Dict class YouTubeCollectionExtractor(CollectionExtractor[DataType]): - __uri_regex = re.compile( - r"^https?://(www\.)?youtube\.com/(channel/|playlist\?list=)(?P[^/&?]+)" + r"""^ + https?:// + (( + www + | + m + )\.)?youtube\.com/( + channel/ + | + playlist\?list= + ) + (?P[^/&?]+) + """, + re.VERBOSE, ) @classmethod diff --git a/server/entertainment_decider/extractors/media/youtube.py b/server/entertainment_decider/extractors/media/youtube.py index 4101b5d..cabcce8 100644 --- a/server/entertainment_decider/extractors/media/youtube.py +++ b/server/entertainment_decider/extractors/media/youtube.py @@ -65,7 +65,11 @@ class YoutubeMediaExtractor(MediaExtractor[YoutubeVideoData]): __uri_regex = re.compile( r"""^ https?://( - (www\.)?youtube(-nocookie)?\.com/( + (( + www + | + m + )\.)?youtube(-nocookie)?\.com/( watch\?v= | embed/