[extractor/tencent] Fix fatal metadata extraction (#7219)

Closes #7177
Authored by: bashonly
This commit is contained in:
bashonly 2023-06-04 07:03:44 -05:00 committed by GitHub
parent 12037d8b0a
commit 971d901d12
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -163,11 +163,9 @@ class VQQBaseIE(TencentBaseIE):
_REFERER = 'v.qq.com' _REFERER = 'v.qq.com'
def _get_webpage_metadata(self, webpage, video_id): def _get_webpage_metadata(self, webpage, video_id):
return self._parse_json( return self._search_json(
self._search_regex( r'<script[^>]*>[^<]*window\.__(?:pinia|PINIA__)\s*=',
r'(?s)<script[^>]*>[^<]*window\.__pinia\s*=\s*([^<]+)</script>', webpage, 'pinia data', video_id, transform_source=js_to_json, fatal=False)
webpage, 'pinia data', fatal=False),
video_id, transform_source=js_to_json, fatal=False)
class VQQVideoIE(VQQBaseIE): class VQQVideoIE(VQQBaseIE):
@ -176,7 +174,7 @@ class VQQVideoIE(VQQBaseIE):
_TESTS = [{ _TESTS = [{
'url': 'https://v.qq.com/x/page/q326831cny0.html', 'url': 'https://v.qq.com/x/page/q326831cny0.html',
'md5': '84568b3722e15e9cd023b5594558c4a7', 'md5': 'b11c9cb781df710d686b950376676e2a',
'info_dict': { 'info_dict': {
'id': 'q326831cny0', 'id': 'q326831cny0',
'ext': 'mp4', 'ext': 'mp4',
@ -187,7 +185,7 @@ class VQQVideoIE(VQQBaseIE):
}, },
}, { }, {
'url': 'https://v.qq.com/x/page/o3013za7cse.html', 'url': 'https://v.qq.com/x/page/o3013za7cse.html',
'md5': 'cc431c4f9114a55643893c2c8ebf5592', 'md5': 'a1bcf42c6d28c189bd2fe2d468abb287',
'info_dict': { 'info_dict': {
'id': 'o3013za7cse', 'id': 'o3013za7cse',
'ext': 'mp4', 'ext': 'mp4',
@ -208,6 +206,7 @@ class VQQVideoIE(VQQBaseIE):
'series': '鸡毛飞上天', 'series': '鸡毛飞上天',
'format_id': r're:^shd', 'format_id': r're:^shd',
}, },
'skip': '404',
}, { }, {
'url': 'https://v.qq.com/x/cover/mzc00200p29k31e/s0043cwsgj0.html', 'url': 'https://v.qq.com/x/cover/mzc00200p29k31e/s0043cwsgj0.html',
'md5': 'fadd10bf88aec3420f06f19ee1d24c5b', 'md5': 'fadd10bf88aec3420f06f19ee1d24c5b',
@ -220,6 +219,7 @@ class VQQVideoIE(VQQBaseIE):
'series': '青年理工工作者生活研究所', 'series': '青年理工工作者生活研究所',
'format_id': r're:^shd', 'format_id': r're:^shd',
}, },
'params': {'skip_download': 'm3u8'},
}, { }, {
# Geo-restricted to China # Geo-restricted to China
'url': 'https://v.qq.com/x/cover/mcv8hkc8zk8lnov/x0036x5qqsr.html', 'url': 'https://v.qq.com/x/cover/mcv8hkc8zk8lnov/x0036x5qqsr.html',