1
0
mirror of https://github.com/wbt5/real-url.git synced 2025-06-16 15:59:57 +08:00
zhibo-url/laifeng.py
wbt5 a81a75fa8c
🎨 Improve 来疯直播
-优化代码
2021-11-21 16:52:39 +08:00

47 lines
1.4 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 获取来疯直播的真实流媒体地址。
# 来疯直播就是优酷直播的个人主播频道,不同于优酷直播下的轮播台和体育直播。
# 来疯直播间链接形式https://v.laifeng.com/8032155
import requests
import re
class LaiFeng:
def __init__(self, rid):
"""
来疯直播
Args:
rid: 房间号
"""
self.rid = rid
self.s = requests.Session()
def get_real_url(self):
try:
response_main = self.s.get(f'http://v.laifeng.com/{self.rid}/m').text
stream_name = re.search(r"initAlias:'(.*)?'", response_main).group(1)
real_url = {}
for stream_format in ['HttpFlv', 'Hls']:
request_url = f'https://lapi.lcloud.laifeng.com/Play?AppId=101&CallerVersion=2.0&StreamName' \
f'={stream_name}&Action=Schedule&Version=2.0&Format={stream_format}'
response = self.s.get(request_url).json()
real_url[stream_format] = response.get(stream_format)[0].get('Url')
except Exception:
raise Exception('该直播间不存在或未开播')
return real_url
def get_real_url(rid):
try:
lf = LaiFeng(rid)
return lf.get_real_url()
except Exception as e:
print('Exception', e)
return False
if __name__ == '__main__':
r = input('请输入来疯直播房间号:\n')
print(get_real_url(r))