python實現(xiàn)b站直播自動發(fā)送彈幕功能
基本開發(fā)環(huán)境
· Python 3.6
· Pycharm
相關模塊使用
import requests import time from tkinter import * import random
目標i網(wǎng)頁分析

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

如上圖所示,先打開開發(fā)者工具,定位到xhr輸入發(fā)送內容,點擊發(fā)送,會有一個post請求的send數(shù)據(jù)接口。
所以只需要請求這個數(shù)據(jù)接口即可發(fā)送彈幕。就是正常的時候爬取數(shù)據(jù),使用requests請求網(wǎng)頁一樣,一般情況大家都是使用的get請求,這里則是需要使用post請求。
之后,只要給請求的時候來一個死循環(huán),那么就可以一直發(fā)送彈幕了,然后再自定義一個彈幕內容,讓它每次都是隨機抽選一句話發(fā)送即可。
完整代碼:
import requests
import time
from tkinter import *
import random
lis_text = ['666', '主播真厲害',
'愛了,愛了',
'關注走一走,活到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': '復制自己的',
'csrf': '復制自己的',
}
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))
# 文本框滾動
text.see(END)
# 更新
text.update()
text.insert(END, '發(fā)送內容:{}'.format(send_meg))
root = Tk()
root.title('B站自動發(fā)送彈幕')
root.geometry('560x450+400+200')
label = Label(root, text='請輸入房間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實現(xiàn)b站直播自動發(fā)送彈幕的詳細內容,更多關于python 自動發(fā)送彈幕的資料請關注腳本之家其它相關文章!
相關文章
Python實現(xiàn)將DNA序列存儲為tfr文件并讀取流程介紹
為什么要在實驗過程中存儲文件,因為有些算法的內容存在一些重復計算的步驟,這些步驟往往消耗很大一部分時間,在有大量參數(shù)的情況時,需要在多次不同參數(shù)的情況下重復試驗,因此可以考慮將一些不涉及參數(shù)運算的部分結果存入文件中2022-09-09
python之線程池map()方法傳遞多參數(shù)list
這篇文章主要介紹了python之線程池map()方法傳遞多參數(shù)list問題,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03
Python3.5 Json與pickle實現(xiàn)數(shù)據(jù)序列化與反序列化操作示例
這篇文章主要介紹了Python3.5 Json與pickle實現(xiàn)數(shù)據(jù)序列化與反序列化操作,結合實例形式分析了Python3.5使用Json與pickle模塊實現(xiàn)json格式數(shù)據(jù)的序列化及反序列化操作相關步驟與注意事項,需要的朋友可以參考下2019-04-04
pytorch/transformers?最后一層不加激活函數(shù)的原因分析
這里給大家解釋一下為什么bert模型最后都不加激活函數(shù),是因為損失函數(shù)選擇的原因,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2023-01-01

