欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > 寫一個Python腳本下載嗶哩嗶哩舞蹈區的所有視頻

寫一個Python腳本下載嗶哩嗶哩舞蹈區的所有視頻

熱門標簽:地圖標注線上如何操作 天津電話機器人公司 400電話辦理哪種 應電話機器人打電話違法嗎 電銷機器人的風險 開封語音外呼系統代理商 手機網頁嵌入地圖標注位置 開封自動外呼系統怎么收費 河北防封卡電銷卡

一、抓取列表

首先點開舞蹈區先選擇宅舞列表。

然后打開 F12 的控制面板,可以找到一條 https://api.bilibili.com/x/web-interface/newlist?rid=20type=0pn=1ps=20jsonp=jsonpcallback=jsonCallback_bili_57905715749828263 的 url,其中 rid 是 B 站的小分類,pn 是頁數。

小編試著在瀏覽器將地址打開居然報了 404,可是在控制面板中這個地址的返回值明明就是視頻列表。試著去掉 callback 的參數,意外的得到了想要的結果。

眾所周知 bid 是一個 B 站視頻的唯一 ID,想要獲取 bid 可以從上面 url 的返回值中提取 aid,然后將 aid 轉換為 bid。

Str = 'fZodR9XQDSUm21yCkr6zBqiveYah8bt4xsWpHnJE7jL5VG3guMTKNPAwcF'  # 準備的一串指定字符串
Dict = {}
 
# 將字符串的每一個字符放入字典一一對應 , 如 f對應0 Z對應1 一次類推。
for i in range(58):
    Dict[Str[i]] = i
 
s = [11, 10, 3, 8, 4, 6, 2, 9, 5, 7]  # 必要的解密列表
xor = 177451812 
add = 100618342136696320  # 這串數字最后要被減去或加上
 
def algorithm_enc(av):
    ret = av
    av = int(av)
    av = (av ^ xor) + add
    # 將BV號的格式(BV + 10個字符) 轉化成列表方便后面的操作
    r = list('BV          ')
    for i in range(10):
        r[s[i]] = Str[av // 58 ** i % 58]
    return ''.join(r)
 
 
def find_bid(p):
    bids = []
    r = requests.get(
            'https://api.bilibili.com/x/web-interface/newlist?rid=20type=0pn={}ps=50jsonp=jsonp'.format(p))
      
    data = json.loads(r.text)
    archives = data['data']['archives']
 
    for item in archives:
        aid = item['aid']
        bid = algorithm_enc(aid)
        bids.append(bid)
 
    return bids

二、獲取視頻的 CID

想要下載 1080 的視頻,光有 bid 是不夠的,還需要 登錄后 Cookie 中的 SESSDATA 值和 cid 。

首先登錄 B 站將 Cookie 中的 SESSDATA 復制到對象頭中。用地址為 https://api.bilibili.com/x/player/pagelist?bvid= url 返回 cid。

def get_cid(bid):
    url = 'https://api.bilibili.com/x/player/pagelist?bvid=' + bid
 
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36',
        'Cookie': 'SESSDATA=182cd036%2C1636985829%2C3b393%2A51',
        'Host': 'api.bilibili.com'
    }
 
    html = requests.get(url, headers=headers).json()
 
    infos = []
 
    data = html['data']
    cid_list = data
    for item in cid_list:
        cid = item['cid']
        title = item['part']
        infos.append({'bid': bid, 'cid': cid, 'title': title})
    return infos

三、下載視頻

下載視頻的 https://api.bilibili.com/x/player/playurl 來自于每次視頻播放完之后的推薦列表。

最后使用 urllib.request.urlretrieve 函數下載視頻。

def get_video_list(aid, cid, quality):
    url_api = 'https://api.bilibili.com/x/player/playurl?cid={}bvid={}qn={}'.format(cid, aid, quality)
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36',
        'Cookie': 'SESSDATA=182cd036%2C1636985829%2C3b393%2A51',
        'Host': 'api.bilibili.com'
    }
    html = requests.get(url_api, headers=headers).json()
    video_list = []
 
    for i in html['data']['durl']:
        video_list.append(i['url'])
    return video_list
 
def schedule_cmd(blocknum, blocksize, totalsize):
    percent = 100.0 * blocknum * blocksize/ totalsize
    s = ('#' * round(percent)).ljust(100, '-')
    sys.stdout.write('%.2f%%' % percent + '[' + s + ']' + '\r')
    sys.stdout.flush()
 
def download(video_list, title, bid):
    for i in video_list:
        opener = urllib.request.build_opener()
        opener.addheaders = [
            ('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36'),
            ('Accept', '*/*'),
            ('Accept-Language', 'en-US,en;q=0.5'),
            ('Accept-Encoding', 'gzip, deflate, br'), 
            ('Range', 'bytes=0-'),  
            ('Referer', 'https://www.bilibili.com/video/'+bid),
            ('Origin', 'https://www.bilibili.com'),
            ('Connection', 'keep-alive'),
 
        ]
 
        filename=os.path.join('D:\\video', r'{}_{}.mp4'.format(bid,title)) 
 
        try:
            urllib.request.install_opener(opener)
            urllib.request.urlretrieve(url=i, filename=filename, reporthook=schedule_cmd) 
        except:
            print(bid + "下載異常,文件:" + filename)

到此這篇關于寫一個Python腳本下載嗶哩嗶哩舞蹈區的所有視頻的文章就介紹到這了,更多相關python下載嗶哩嗶哩視頻內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python b站視頻下載的五種版本
  • 教你用Python下載抖音無水印視頻
  • 教你如何使用Python下載B站視頻的詳細教程
  • python基于tkinter制作m3u8視頻下載工具
  • Python通過m3u8文件下載合并ts視頻的操作
  • python gui開發——制作抖音無水印視頻下載工具(附源碼)
  • 用python制作個視頻下載器
  • Python爬蟲進階之爬取某視頻并下載的實現
  • 利用python 下載bilibili視頻

標簽:蘭州 江蘇 成都 宿遷 駐馬店 六盤水 山東 常州

巨人網絡通訊聲明:本文標題《寫一個Python腳本下載嗶哩嗶哩舞蹈區的所有視頻》,本文關鍵詞  寫,一個,Python,腳本,下載,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《寫一個Python腳本下載嗶哩嗶哩舞蹈區的所有視頻》相關的同類信息!
  • 本頁收集關于寫一個Python腳本下載嗶哩嗶哩舞蹈區的所有視頻的相關信息資訊供網民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    国产女主播喷水高潮网红在线| 欧美日韩黄色一区二区| 日韩欧美一区二区视频| 亚洲天堂成人在线观看| 国产一区二区中文字幕| 在线免费观看污视频| 欧美丝袜丝交足nylons| 中文字幕永久在线不卡| 国产一区在线看| 亚洲激情视频小说| 91精品国产高清一区二区三区| 亚洲女同女同女同女同女同69| 日日夜夜精品视频天天综合网| 中文字幕第10页| 色婷婷激情综合| 国产精品视频一二三区 | 欧美综合久久久| 国产日产欧美一区二区视频| 日本麻豆一区二区三区视频| youjizz.com日本| 欧美亚洲图片小说| 亚洲视频在线观看一区| 成人在线视频首页| 少妇aaaaa| 国产精品久久久久天堂| 国产91丝袜在线播放0| 亚洲女人毛茸茸高潮| 久久夜色精品国产噜噜av| 免费在线观看一区二区三区| 在线天堂www在线国语对白| 欧美日韩国产乱码电影| 一区二区三区日本| 91视频com| 91黄视频在线观看| 亚洲国产精品久久人人爱| 日本黄色免费观看| 久久伊人中文字幕| 精品免费99久久| 美女视频网站黄色亚洲| 无码少妇一区二区| 中文字幕av一区二区三区高| 成人免费毛片a| 欧洲生活片亚洲生活在线观看| 亚洲一区在线免费观看| 欧产日产国产精品98| 日韩免费电影一区| 国产老女人精品毛片久久| 日本精品在线免费观看| 一区二区欧美国产| 手机在线看片日韩| 欧美极品少妇xxxxⅹ高跟鞋 | 小早川怜子一区二区的演员表| 中文字幕一区二区三中文字幕| 69久久精品无码一区二区| 欧美一二区视频| 国产毛片精品视频| 91福利视频在线| 日韩va欧美va亚洲va久久| 黄色国产在线播放| 亚洲激情一二三区| 亚洲人成人无码网www国产| 国产精品毛片无遮挡高清| 欧美图片自拍偷拍| 久久久久久久综合狠狠综合| 91蜜桃传媒精品久久久一区二区 | 黄色av电影网站| 久久人人97超碰com| 97se亚洲国产综合自在线| 在线综合+亚洲+欧美中文字幕| 国产乱人伦偷精品视频免下载| 色8久久精品久久久久久蜜| 石原莉奈在线亚洲三区| 九九精品视频免费| 午夜欧美一区二区三区在线播放| 长河落日免费高清观看| 亚洲图片欧美综合| fc2ppv在线播放| 日韩在线观看一区二区| 丁香花五月激情| 美女久久久精品| 91黄色免费看| 狠狠色伊人亚洲综合成人| 欧美亚洲国产bt| 极品少妇xxxx精品少妇偷拍| 91福利社在线观看| 国产精品18久久久| 日韩女优电影在线观看| 欧美性猛交xx| 中文字幕高清一区| 人妻av无码一区二区三区| 亚洲国产人成综合网站| 欧美一区免费观看| 久久国产婷婷国产香蕉| 欧美日韩视频不卡| 丁香啪啪综合成人亚洲小说| 精品国产三级a在线观看| 色婷婷狠狠18禁久久| 国产精品国产三级国产专播品爱网 | 国产精品一线二线三线精华| 欧美一区二区视频观看视频| a4yy欧美一区二区三区| 久久看人人爽人人| 久久人人爽人人爽人人片| 亚洲在线视频一区| 四虎永久免费在线| 国产精品亚洲成人| 久久久久久久综合日本| 亚洲精品国产一区黑色丝袜 | 香蕉久久夜色精品国产使用方法 | 午夜影院在线观看欧美| 色婷婷亚洲精品| 国产很黄免费观看久久| 精品少妇一区二区三区在线播放| 国产精品扒开腿做爽爽爽a片唱戏| 亚洲男人电影天堂| 在线免费日韩av| 国产精品69久久久久水密桃 | 你懂的在线观看网站| 一区二区高清免费观看影视大全| 国产大学生自拍| 成人午夜av电影| 国产精品成人午夜| 免费中文字幕日韩| 国产91丝袜在线播放九色| 中文字幕 久热精品 视频在线| 日韩影视一区二区三区| 国产在线精品视频| 久久嫩草精品久久久精品| 在线免费观看视频| 国产一区在线精品| 久久精品视频一区二区三区| 国产精品av久久久久久无| 激情国产一区二区| 久久精品在这里| 成人精品一二三区| 国产成人免费网站| 国产精品区一区二区三| 亚洲成人生活片| 99精品视频一区二区三区| 一区二区三区视频在线看| 欧美日韩视频在线观看一区二区三区 | 激情都市一区二区| 国产欧美一区二区三区在线看蜜臀| 国产精品麻豆一区| 成人免费毛片aaaaa**| 亚洲欧美视频在线观看视频| 欧美在线观看你懂的| 黄色激情在线观看| 青青草原综合久久大伊人精品优势| 欧美www视频| 久久一级免费视频| 成人av在线影院| 亚洲综合在线五月| 91精品视频网| av电影在线不卡| 粉嫩欧美一区二区三区高清影视| 中文字幕亚洲区| 欧美日韩国产三级| 亚洲精品视频久久久| 国产酒店精品激情| 亚洲欧美日韩国产手机在线| 欧美日韩不卡一区二区| 欧美特黄一区二区三区| 国产精品一区在线观看乱码| 亚洲视频综合在线| 91麻豆精品国产91久久久久久久久| 中文字幕高清视频| 国产aⅴ精品一区二区三区色成熟| 亚洲人成网站在线| 欧美一区二区在线观看| 欧美精品日韩在线| 91视频在线看| 麻豆视频一区二区| 国产精品久久三| 欧美精品xxxxbbbb| 国产精品视频在| 免费观看一区二区三区| 久久精品99国产精品日本| 国产精品不卡一区二区三区| 欧美老肥妇做.爰bbww| 天堂在线中文视频| 最好看的中文字幕| 精品影视av免费| 悠悠色在线精品| 欧美精品一区二区蜜臀亚洲| 色婷婷一区二区| 国产精品20p| 亚洲av无码久久精品色欲| 精品亚洲成a人在线观看| 亚洲免费av高清| 精品成人一区二区三区| 亚洲天堂网av在线| 亚洲av成人片无码| 成人免费的视频| 蜜桃视频在线一区| 亚洲欧美日韩系列| 久久久亚洲综合| 555夜色666亚洲国产免| 欧美成人777| 亚洲区免费视频|