好友
阅读权限 10
听众
最后登录 1970-1-1
扛刀萝莉
发表于 2022-10-18 16:16
分析过程请参考 https://www.52pojie.cn/thread-1700738-1-1.html
鉴于有些朋友不会抓包或者有问题 附上自己写的代码
可以直接获取flv和m3u8的直播源链接
import re
import sys
import requests
DEBUG = False
headers = {
'authority' : 'v.douyin.com' ,
'user-agent' : 'Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1' ,
}
url = input (' 请输入抖音直播链接或 19 位 room_id : ' )
if re.match(r' \d{19} ' , url):
room_id = url
else :
try :
url = re.search(r' (https.*) ' , url).group(1 )
response = requests.head(url, headers =headers)
url = response.headers['location' ]
room_id = re.search(r' \d{19} ' , url).group(0 )
except Exception as e:
if DEBUG:
print (e)
print (' 获取 room_id 失败 ' )
sys.exit(1 )
print ('room_id' , room_id)
try :
headers.update({
'authority' : 'webcast.amemv.com' ,
'cookie' : '_tea_utm_cache_1128={%22utm_source%22:%22copy%22%2C%22utm_medium%22:%22android%22%2C%22utm_campaign%22:%22client_share%22}' ,
})
response = requests.get('https://webcast.amemv.com/webcast/room/reflow/info/?verifyFp=&type_id=0&live_id=1&room_id={}&sec_user_id=&app_id=1128&msToken=&X-Bogus=' .format(room_id), headers =headers, ).json()
print (response)
rtmp_pull_url = response['data' ]['room' ]['stream_url' ]['rtmp_pull_url' ]
hls_pull_url = response['data' ]['room' ]['stream_url' ]['hls_pull_url' ]
print (rtmp_pull_url)
print (hls_pull_url)
except Exception as e:
if DEBUG:
print (e)
print (' 获取 real url 失败 ' )
免费评分
查看全部评分
发帖前要善用【论坛搜索 】 功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。