aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorc-basalt <117849907+c-basalt@users.noreply.github.com>2024-02-02 16:08:29 -0500
committerGitHub <noreply@github.com>2024-02-02 21:08:29 +0000
commitffa017cfc5973b265c92248546fcf5020dc43eaf (patch)
tree2fda7b37cac8590fc1abe9ac227ec2bfc5bfa35c
parenta0d50aabc5462aee302bd3f2663d3a3554875789 (diff)
[ie/BiliBiliSearch] Set cookie to fix extraction (#9119)
Closes #5083 Authored by: c-basalt
-rw-r--r--yt_dlp/extractor/bilibili.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/yt_dlp/extractor/bilibili.py b/yt_dlp/extractor/bilibili.py
index cd7df69ef..4ed9e2af7 100644
--- a/yt_dlp/extractor/bilibili.py
+++ b/yt_dlp/extractor/bilibili.py
@@ -7,6 +7,7 @@ import math
import re
import time
import urllib.parse
+import uuid
from .common import InfoExtractor, SearchInfoExtractor
from ..dependencies import Cryptodome
@@ -1464,8 +1465,37 @@ class BiliBiliSearchIE(SearchInfoExtractor):
IE_DESC = 'Bilibili video search'
_MAX_RESULTS = 100000
_SEARCH_KEY = 'bilisearch'
+ _TESTS = [{
+ 'url': 'bilisearch3:靡烟 出道一年,我怎么还在等你单推的女人睡觉后开播啊',
+ 'playlist_count': 3,
+ 'info_dict': {
+ 'id': '靡烟 出道一年,我怎么还在等你单推的女人睡觉后开播啊',
+ 'title': '靡烟 出道一年,我怎么还在等你单推的女人睡觉后开播啊',
+ },
+ 'playlist': [{
+ 'info_dict': {
+ 'id': 'BV1n44y1Q7sc',
+ 'ext': 'mp4',
+ 'title': '“出道一年,我怎么还在等你单推的女人睡觉后开播啊?”【一分钟了解靡烟miya】',
+ 'timestamp': 1669889987,
+ 'upload_date': '20221201',
+ 'description': 'md5:43343c0973defff527b5a4b403b4abf9',
+ 'tags': list,
+ 'uploader': '靡烟miya',
+ 'duration': 123.156,
+ 'uploader_id': '1958703906',
+ 'comment_count': int,
+ 'view_count': int,
+ 'like_count': int,
+ 'thumbnail': r're:^https?://.*\.(jpg|jpeg|png)$',
+ '_old_archive_ids': ['bilibili 988222410_part1'],
+ },
+ }],
+ }]
def _search_results(self, query):
+ if not self._get_cookies('https://api.bilibili.com').get('buvid3'):
+ self._set_cookie('.bilibili.com', 'buvid3', f'{uuid.uuid4()}infoc')
for page_num in itertools.count(1):
videos = self._download_json(
'https://api.bilibili.com/x/web-interface/search/type', query,