B站視頻下載需要用到2個接口住闯,一個是通過Aid號獲取視頻基本信息和Cid號的接口糟把,一個是通過視頻Cid號獲取下載地址的接口缨历。
接口一
https://api.bilibili.com/x/web-interface/view?aid=29702317
接口二
https://api.bilibili.com/x/player/playurl?avid=29702317&cid=51686571&qn=74&otype=json
注意事項
- 接口二在獲取視頻下載地址的時候衫贬,如果沒有cookie信息的話最大只能獲取到480P清晰度的視頻蝴乔,需要用賬戶登錄后獲取其cookie里面的
SESSDATA
值請求的同時還要在headers
中添加User-Agent
和Host
,具體請看下面:
headers: {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:56.0) Gecko/20100101 Firefox/56.0',
'Host': 'api.bilibili.com',
'Cookie': 'SESSDATA=bd125cdd%2C1554519358%2C6d4df231'
}
SESSDATA
的有效期是一個月
- 在下載視頻的時候四啰,
headers
也要進行偽造宁玫,具體看下面:
headers: {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:56.0) Gecko/20100101 Firefox/56.0',
'Accept': '*/*',
'Accept-Language': 'en-US,en;q=0.5',
'Accept-Encoding': 'gzip, deflate, br',
'Range': 'bytes=0-',
'Referer': 'http://www.bilibili.com/video/av46174956/',
'Origin': 'https://www.bilibili.com',
'Connection': 'keep-alive'
}
把Referer里面的av號替換成下載的視頻的aid號