mirror of
https://github.com/soimort/you-get.git
synced 2025-02-03 08:43:58 +03:00
fix bilibili
update xml-url to get all format of video
This commit is contained in:
parent
b28d78f71d
commit
a3b15279b6
@ -28,7 +28,8 @@ class Bilibili(VideoExtractor):
|
||||
live_room_init_api_url = 'https://api.live.bilibili.com/room/v1/Room/room_init?id={}'
|
||||
live_room_info_api_url = 'https://api.live.bilibili.com/room/v1/Room/get_info?room_id={}'
|
||||
|
||||
SEC1 = '1c15888dc316e05a15fdd0a02ed6584f'
|
||||
#SEC1 = '1c15888dc316e05a15fdd0a02ed6584f'
|
||||
SEC1 = '94aba54af9065f71de72f5508f1cd42e'
|
||||
SEC2 = '9b288147e5474dd2aa67085f716c560d'
|
||||
stream_types = [
|
||||
{'id': 'hdflv'},
|
||||
@ -44,7 +45,7 @@ class Bilibili(VideoExtractor):
|
||||
@staticmethod
|
||||
def bilibili_stream_type(urls):
|
||||
url = urls[0]
|
||||
if 'hd.flv' in url or '-112.flv' in url:
|
||||
if 'hd.flv' in url or '-80.flv' in url:
|
||||
return 'hdflv', 'flv'
|
||||
if '-64.flv' in url:
|
||||
return 'flv720', 'flv'
|
||||
@ -59,7 +60,8 @@ class Bilibili(VideoExtractor):
|
||||
def api_req(self, cid, quality, bangumi, bangumi_movie=False, **kwargs):
|
||||
ts = str(int(time.time()))
|
||||
if not bangumi:
|
||||
params_str = 'cid={}&player=1&quality={}&ts={}'.format(cid, quality, ts)
|
||||
#params_str = 'cid={}&player=1&quality={}&ts={}'.format(cid, quality, ts)
|
||||
params_str = 'appkey=84956560bc028eb7&cid={}&otype=xml&qn={}&quality={}&type='.format(cid, quality, quality)
|
||||
chksum = hashlib.md5(bytes(params_str+self.SEC1, 'utf8')).hexdigest()
|
||||
api_url = self.api_url + params_str + '&sign=' + chksum
|
||||
else:
|
||||
@ -97,7 +99,7 @@ class Bilibili(VideoExtractor):
|
||||
quality = 'hdflv' if bangumi else 'flv'
|
||||
|
||||
info_only = kwargs.get('info_only')
|
||||
for qlt in range(4, -1, -1):
|
||||
for qlt in [116,112,80,74,64,32,16,15]:
|
||||
api_xml = self.api_req(cid, qlt, bangumi, **kwargs)
|
||||
self.parse_bili_xml(api_xml)
|
||||
if not info_only or stream_id:
|
||||
|
Loading…
Reference in New Issue
Block a user