python实现b站直播自动发送弹幕功能

作者:Martina_oh 时间:2023-07-13 06:58:15 

基本开发环境

· Python 3.6

· Pycharm

相关模块使用


import requests
import time
from tkinter import *
import random

目标i网页分析

python实现b站直播自动发送弹幕功能

首先你要登陆B站账号,然后随便点击一个直播间,这里建议先选择人气少的,弹幕少的,这样方便查看效果

python实现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()

来源:https://www.cnblogs.com/Martinaoh/p/14416748.html

标签:python,b站,直播,自动发送弹幕
0
投稿

猜你喜欢

  • python BeautifulSoup库的安装与使用

    2022-06-22 17:01:04
  • 利用Python演示数型数据结构的教程

    2022-04-29 07:05:40
  • Python用SSH连接到网络设备

    2022-01-20 08:57:41
  • SQL Server 比较日期大小的方法

    2024-01-22 16:03:03
  • python datetime处理时间小结

    2022-11-21 01:38:15
  • 基于Python实现自制拼图小游戏

    2021-12-01 03:25:01
  • Oracle11.2.0.1如何升级到11.2.0.3 Oracle同版本升级

    2023-06-25 15:28:11
  • 解决Pycharm界面的子窗口不见了的问题

    2022-03-06 15:21:15
  • Python3 基础语法详解

    2023-06-24 06:10:55
  • Python线程同步的实现代码

    2022-10-01 00:20:48
  • React+TypeScript+webpack4多入口配置详解

    2024-02-24 03:23:31
  • php返回字符串中所有单词的方法

    2024-06-05 09:48:16
  • Python自然语言处理之切分算法详解

    2023-02-02 04:46:34
  • jquery与google map api结合使用 控件,监听器

    2024-04-25 13:20:53
  • 详解Python 2.6 升级至 Python 2.7 的实践心得

    2022-01-03 09:47:09
  • js计算精度问题小结

    2024-04-10 13:55:24
  • Python获取对象属性的几种方式小结

    2022-05-27 18:09:42
  • MySQL错误TIMESTAMP column with CURRENT_TIMESTAMP的解决方法

    2024-01-25 20:47:47
  • Python Mock模块原理及使用方法详解

    2023-03-31 14:13:56
  • 解决前后端分离 vue+springboot 跨域 session+cookie失效问题

    2024-06-07 15:22:43
  • asp之家 网络编程 m.aspxhome.com