最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python爬蟲 bilibili視頻彈幕提取過程詳解

 更新時間:2019年07月31日 09:32:32   作者:Tanglaoer  
這篇文章主要介紹了Python爬蟲 bilibili視頻彈幕提取過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

兩個重要點

1.獲取彈幕的url是以 .xml 結尾

2.彈幕url的所需參數在視頻url響應的 javascript 中

先看代碼

import requests
from lxml import etree
import re
# 使用手機UA
headers = {
  "User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1"
}
# 視頻url
video_url = "https://m.bilibili.com/video/av37834086.html"
html = requests.get(url=video_url, headers=headers).content.decode('utf-8')
# 獲取彈幕url的參數
cid = re.findall(r"comment: '//comment.bilibili.com/' \+ (.*?) \+ '.xml',", html)
url = "https://comment.bilibili.com/" + cid[0] + ".xml"
print(url)
response = requests.get(url, headers=headers)
html = response.content
xml = etree.HTML(html)
# 提取數據
str_list = xml.xpath("http://d/text()")
# 寫入文件
with open('bibi_xuxubaobao.txt', 'w', encoding='utf-8') as f:
  for line in str_list:
    f.write(line)
    f.write('\n')

先找到彈幕的url,以.xml結尾,所以先找到這串數字所在的位置,并獲取這串數字發(fā)起第二次請求

而這串數字就在 第一次請求的響應的JavaScript中,可以通過 re 正則表達式進行提取

接下來的工作就是獲取彈幕url返回的所有彈幕數據,然后對響應進行數據處理。

代碼示例中使用的是 lxml 進行獲取。接著就是保存到個人本地文件中了

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Python實現清除文件夾中重復視頻

    Python實現清除文件夾中重復視頻

    本文將利用Python中的os、hashlib、shutil模塊實現對文件夾中的重復視頻進行清除,實現文件夾中無重復文件情況發(fā)生,需要的可以參考一下
    2022-05-05
  • Python3匿名函數lambda介紹與使用示例

    Python3匿名函數lambda介紹與使用示例

    這篇文章主要給大家介紹了關于Python3匿名函數lambda與使用的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Python3具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-05-05
  • 對Matlab中共軛、轉置和共軛裝置的區(qū)別說明

    對Matlab中共軛、轉置和共軛裝置的區(qū)別說明

    這篇文章主要介紹了對Matlab中共軛、轉置和共軛裝置的區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • Pytorch中關于model.eval()的作用及分析

    Pytorch中關于model.eval()的作用及分析

    這篇文章主要介紹了Pytorch中關于model.eval()的作用及分析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Python?中?Pandas?文件操作和讀取?CSV?參數詳解

    Python?中?Pandas?文件操作和讀取?CSV?參數詳解

    CSV?又稱逗號分隔值文件,是一種簡單的文件格式,以特定的結構來排列表格數據,這篇文章主要介紹了Python?之?Pandas?文件操作和讀取?CSV?參數詳解,需要的朋友可以參考下
    2023-03-03
  • python同義詞替換的實現(jieba分詞)

    python同義詞替換的實現(jieba分詞)

    這篇文章主要介紹了python同義詞替換的實現(jieba分詞),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-01-01
  • 詳解python之heapq模塊及排序操作

    詳解python之heapq模塊及排序操作

    說到排序,很多人可能第一想到的就是sorted,但是你可能不知道python中其實還有還就中方法喲,并且好多種場景下效率都會比sorted高。那么接下來我就依次來介紹我所知道的排序操作
    2019-04-04
  • 基于jupyter代碼無法在pycharm中運行的解決方法

    基于jupyter代碼無法在pycharm中運行的解決方法

    這篇文章主要介紹了基于jupyter代碼無法在pycharm中運行的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • python入門學習之自帶help功能初步使用示例

    python入門學習之自帶help功能初步使用示例

    這篇文章主要為大家介紹了python入門學習自帶help功能初步使用示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • Python神器之使用watchdog監(jiān)控文件變化

    Python神器之使用watchdog監(jiān)控文件變化

    這篇文章主要為大家詳細介紹了Python中的神器watchdog以及如何使用watchdog監(jiān)控文件變化,文中的示例代碼講解詳細,感興趣的小伙伴可以了解下
    2023-12-12

最新評論

宿松县| 定襄县| 吉首市| 临西县| 双峰县| 北海市| 聂荣县| 景洪市| 万源市| 南漳县| 蓬安县| 林周县| 和田市| 青阳县| 华坪县| 建始县| 昆山市| 福清市| 江津市| 五峰| 黔西县| 保山市| 凌源市| 光泽县| 泸溪县| 长沙市| 原阳县| 徐水县| 河南省| 涟源市| 加查县| 湖口县| 宿迁市| 潮安县| 搜索| 枣强县| 嘉定区| 涟源市| 兰西县| 交城县| 祥云县|