# -*- coding:utf-8 -*-"""
獲取bilibili直播間彈幕
房間號從網頁源**中獲取
開啟直播畫面後,按ctrl+u 開啟網頁源**,按ctrl+f 搜尋 room_id
搜到的"room_id":1016中,1016就是房間號
獲取不**間的彈幕:修改**第26行的roomid的值為對應的房間號"""
import requests;
import
time
;class danmu(
): def __init__(self):
# 彈幕url
self.url =
'';# 請求頭
self.headers =
# 定義post傳遞的引數
self.data =
# 日誌寫物件
self.log_file_write = open(
'danmu.log',mode=
'a',encoding=
'utf-8');
# 讀取日誌
log_file_read = open(
'danmu.log',mode=
'r',encoding=
'utf-8');
self.log = log_file_read.readlines();
def get_danmu(self):
# 獲取直播間彈幕
html = requests.post(url=self.url,headers=self.headers,data=self.data).json();
# 解析彈幕列表
for content in html[
'data'][
'room'
]: # 獲取暱稱
nickname = content[
'nickname'];
# 獲取發言
text = content[
'text'];
# 獲取發言時間
timeline = content[
'timeline'];
# 記錄發言
msg = timeline+' '+nickname+': '+text;
# 判斷對應訊息是否存在於日誌,如果和最後一條相同則列印並儲存
if msg+'\n' not in self.log:
# 列印訊息
print (msg)
;# 儲存日誌
self.log_file_write.write(msg+'\n');
# 新增到日誌列表);
# 清空變數快取
nickname ='';
text ='';
timeline ='';
msg ='';
# 建立bdanmu例項
bdanmu = danmu();
while true:
# 暫停0.5防止cpu占用過高
time.sleep(0.5)
;# 獲取彈幕
bdanmu.get_danmu(
);
爬蟲專欄6 爬取B站彈幕
比如說這裡我隨便開乙個網頁 在xhr標籤裡面可以看到乙個小眼睛圖示的玩意兒,開啟那個url進去之後 就可以直接提取了 ps 1.針對匹配,乙個尖括號結束之後最好用.過渡到另乙個尖括號,不要什麼都不加,可能抓不出來 2.這是針對response.text和response.content.decode...
python 爬蟲 b站直播彈幕獲取
本文章的 可能已經過時了,請參考最新 博主本人在空閒的時候比較喜歡看一些遊戲直播,發現好多主播都在使用彈幕姬,便對彈幕姬的原理產生了興趣,打算自己動手做乙個彈幕播報的程式 import requests import win32com.client import time old list 建立乙個...
Python3爬蟲 鬥魚彈幕爬蟲
在網上找到了乙份鬥魚彈幕伺服器第三方接入協議v1.6.2,有了第三方介面,做起來就容易多了。鬥魚後台協議頭設計如下 這裡的訊息長度是我們傳送的資料部分的長度和頭部的長度之和,兩個訊息長度是一樣。然後要注意的是該協議使用的是小端整數,所以我們要對資料進行處理後再傳送,這裡可以使用int.to byte...