佳木斯湛栽影视文化发展公司

主頁 > 知識(shí)庫 > python實(shí)現(xiàn)b站直播自動(dòng)發(fā)送彈幕功能

python實(shí)現(xiàn)b站直播自動(dòng)發(fā)送彈幕功能

熱門標(biāo)簽:語音系統(tǒng) 硅谷的囚徒呼叫中心 百度AI接口 企業(yè)做大做強(qiáng) 呼叫中心市場需求 電話運(yùn)營中心 Win7旗艦版 客戶服務(wù)

基本開發(fā)環(huán)境

· Python 3.6

· Pycharm

相關(guān)模塊使用

import requests
import time
from tkinter import *
import random

目標(biāo)i網(wǎng)頁分析

首先你要登陸B(tài)站賬號(hào),然后隨便點(diǎn)擊一個(gè)直播間,這里建議先選擇人氣少的,彈幕少的,這樣方便查看效果

如上圖所示,先打開開發(fā)者工具,定位到xhr輸入發(fā)送內(nèi)容,點(diǎn)擊發(fā)送,會(huì)有一個(gè)post請(qǐng)求的send數(shù)據(jù)接口。

所以只需要請(qǐng)求這個(gè)數(shù)據(jù)接口即可發(fā)送彈幕。就是正常的時(shí)候爬取數(shù)據(jù),使用requests請(qǐng)求網(wǎng)頁一樣,一般情況大家都是使用的get請(qǐng)求,這里則是需要使用post請(qǐng)求。

之后,只要給請(qǐng)求的時(shí)候來一個(gè)死循環(huán),那么就可以一直發(fā)送彈幕了,然后再自定義一個(gè)彈幕內(nèi)容,讓它每次都是隨機(jī)抽選一句話發(fā)送即可。

完整代碼:

import requests
import time
from tkinter import *
import random

lis_text = ['666', '主播真厲害',
   '愛了,愛了',
   '關(guān)注走一走,活到99',
   '牛逼?。?!',
   '秀兒,是你嗎?']


def send():
 a = 0
 while True:
  time.sleep(2)
  send_meg = random.choice(lis_text)
  roomid = entry.get()
  ti = int(time.time())
  url = 'https://api.live.bilibili.com/msg/send'
  data = {
   'color': '16777215',
   'fontsize': '25',
   'mode': '1',
   'msg': send_meg,
   'rnd': '{}'.format(ti),
   'roomid': '{}'.format(roomid),
   'bubble': '0',
   'csrf_token': '復(fù)制自己的',
   'csrf': '復(fù)制自己的',
  }

  headers = {
   'cookie': '使用你自己的cookie',
   'origin': 'https://live.bilibili.com',
   'referer': 'https://live.bilibili.com/blanc/1029?liteVersion=true',
   'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36',
  }
  a += 1
  response = requests.post(url=url, data=data, headers=headers)
  print(response)
  text.insert(END, '第{}條彈幕發(fā)送成功'.format(a))
  # 文本框滾動(dòng)
  text.see(END)
  # 更新
  text.update()
  text.insert(END, '發(fā)送內(nèi)容:{}'.format(send_meg))


root = Tk()
root.title('B站自動(dòng)發(fā)送彈幕')
root.geometry('560x450+400+200')

label = Label(root, text='請(qǐng)輸入房間ID:', font=('華文行楷', 20))
label.grid()

entry = Entry(root, font=('隸書', 20))
entry.grid(row=0, column=1)

text = Listbox(root, font=('隸書', 16), width=50, heigh=15)
text.grid(row=2, columnspan=2)

button1 = Button(root, text='開始發(fā)送', font=('隸書', 15), command=send)
button1.grid(row=3, column=0)

button2 = Button(root, text='退出程序', font=('隸書', 15), command=root.quit)
button2.grid(row=3, column=1)

root.mainloop()

以上就是python實(shí)現(xiàn)b站直播自動(dòng)發(fā)送彈幕的詳細(xì)內(nèi)容,更多關(guān)于python 自動(dòng)發(fā)送彈幕的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • jQuery+ThinkPHP+Ajax實(shí)現(xiàn)即時(shí)消息提醒功能實(shí)例代碼
  • C# 調(diào)用騰訊即時(shí)通信 IM的示例
  • java實(shí)現(xiàn)即時(shí)通信的完整步驟分享
  • Android實(shí)現(xiàn)聊天記錄上傳本地服務(wù)器(即時(shí)通訊)
  • php和騰訊直播的實(shí)現(xiàn)代碼
  • 詳解阿里云視頻直播PHP-SDK接入教程
  • 2分鐘實(shí)現(xiàn)一個(gè)Vue實(shí)時(shí)直播系統(tǒng)的示例代碼
  • 詳解玩轉(zhuǎn)直播系列之消息模塊演進(jìn)

標(biāo)簽:崇左 喀什 山西 濟(jì)南 長沙 山西 海南 安康

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python實(shí)現(xiàn)b站直播自動(dòng)發(fā)送彈幕功能》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    鸡泽县| 太仓市| 四平市| 新安县| 云安县| 石狮市| 体育| 海口市| 泗洪县| 长武县| 五寨县| 冕宁县| 乐安县| 得荣县| 苏尼特右旗| 霞浦县| 福鼎市| 江安县| 保山市| 泸水县| 合江县| 五大连池市| 于田县| 谢通门县| 清河县| 遵义县| 黄浦区| 阿拉尔市| 四川省| 鄂托克前旗| 长宁县| 高碑店市| 东阳市| 伽师县| 壤塘县| 湟中县| 贵定县| 德江县| 丹东市| 土默特右旗| 修文县|