From d28aae5bad4812cad7ad801668e7929c0a734437 Mon Sep 17 00:00:00 2001 From: wbt5 Date: Sat, 9 Nov 2019 15:49:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=93=94=E5=93=A9=E5=93=94?= =?UTF-8?q?=E5=93=A9=E7=9B=B4=E6=92=AD=E6=BA=90=EF=BC=9B=E7=96=91=E4=BC=BC?= =?UTF-8?q?=E9=83=A8=E5=88=86=E5=9B=BD=E5=A4=96IP=E6=97=A0=E6=B3=95GET?= =?UTF-8?q?=E5=88=B0=E6=AD=A3=E7=A1=AE=E6=95=B0=E6=8D=AE=EF=BC=8C=E5=BE=85?= =?UTF-8?q?=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- get_bilibili_real_url.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/get_bilibili_real_url.py b/get_bilibili_real_url.py index aa93046..bed235b 100644 --- a/get_bilibili_real_url.py +++ b/get_bilibili_real_url.py @@ -25,10 +25,14 @@ def get_real_url(rid): if live_status: room_url = 'https://api.live.bilibili.com/room/v1/Room/playUrl?cid=' +str(room_id) + '&platform=h5&otype=json&quality=4' response = requests.get(url=room_url).json() - result = response.get('data').get('durl')[0].get('url') - pattern = r'.com/live-[\S]*/([\s\S]*.m3u8)' - pattern_result = re.findall(pattern, result, re.I)[0] - real_url = 'https://cn-hbxy-cmcc-live-01.live-play.acgvideo.com/live-bvc/' + pattern_result + durl = response.get('data').get('durl', 0) + if durl: + result = durl[0].get('url') + pattern = r'.com/live-[\S]*/([\s\S]*.m3u8)' + pattern_result = re.findall(pattern, result, re.I)[0] + real_url = 'https://cn-hbxy-cmcc-live-01.live-play.acgvideo.com/live-bvc/' + pattern_result + else: + real_url = '疑似部分国外IP无法GET到正确数据,待验证' else: real_url = '未开播或直播间不存在' return real_url