python實現b站直播自動發送彈幕功能
基本開發環境
· Python 3.6
· Pycharm
相關模塊使用
import requests import time from tkinter import * import random
目標i網頁分析
首先你要登陸B站賬號,然後隨便點擊一個直播間,這裡建議先選擇人氣少的,彈幕少的,這樣方便查看效果
如上圖所示,先打開開發者工具,定位到xhr輸入發送內容,點擊發送,會有一個post請求的send數據接口。
所以隻需要請求這個數據接口即可發送彈幕。就是正常的時候爬取數據,使用requests請求網頁一樣,一般情況大傢都是使用的get請求,這裡則是需要使用post請求。
之後,隻要給請求的時候來一個死循環,那麼就可以一直發送彈幕瞭,然後再自定義一個彈幕內容,讓它每次都是隨機抽選一句話發送即可。
完整代碼:
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, '第{}條彈幕發送成功'.format(a)) # 文本框滾動 text.see(END) # 更新 text.update() text.insert(END, '發送內容:{}'.format(send_meg)) root = Tk() root.title('B站自動發送彈幕') 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='開始發送', 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實現b站直播自動發送彈幕的詳細內容,更多關於python 自動發送彈幕的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- Python實現直播彈幕自動發送功能
- Python基於爬蟲實現全網搜索並下載音樂
- Python+Tkinter制作在線個性簽名工具
- python tkinter Entry控件的焦點移動操作
- Python實現免費音樂下載器