diff --git a/yt_dlp/extractor/xvideos.py b/yt_dlp/extractor/xvideos.py index 59eef8490..0ccb673d7 100644 --- a/yt_dlp/extractor/xvideos.py +++ b/yt_dlp/extractor/xvideos.py @@ -173,20 +173,20 @@ def _real_extract(self, url): class XVideosQuickiesIE(InfoExtractor): IE_NAME = 'xvideos:quickies' - _VALID_URL = r'https?://(?P(?:[^/]+\.)?xvideos2?\.com)/amateur-channels/[^#]+#quickies/a/(?P\d+)' + _VALID_URL = r'https?://(?P(?:[^/?#]+\.)?xvideos2?\.com)/(?:profiles/|amateur-channels/)?[^#]+#quickies/a/(?P[a-z0-9]+)' _TESTS = [{ - 'url': 'https://www.xvideos.com/amateur-channels/wifeluna#quickies/a/47258683', - 'md5': '16e322a93282667f1963915568f782c1', + 'url': 'https://www.xvideos.com/lili_love#quickies/a/ipdtikh1a4c', + 'md5': '670235b33d790201f4515fd3604fa236', 'info_dict': { - 'id': '47258683', + 'id': 'ipdtikh1a4c', 'ext': 'mp4', 'title': 'Verification video', 'age_limit': 18, - 'duration': 16, + 'duration': 80, 'thumbnail': r're:^https://cdn.*-pic.xvideos-cdn.com/.+\.jpg', } }] def _real_extract(self, url): domain, id_ = self._match_valid_url(url).group('domain', 'id') - return self.url_result(f'https://{domain}/video{id_}/_', XVideosIE, id_) + return self.url_result(f'https://{domain}/video.{id_}/_', XVideosIE, id_)