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


Posted in Python onFebruary 20, 2021

基本开发环境

· 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()

以上就是python实现b站直播自动发送弹幕的详细内容,更多关于python 自动发送弹幕的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python中偏函数partial用法实例分析
Jul 08 Python
深入讲解Python中的迭代器和生成器
Oct 26 Python
使用Python写一个小游戏
Apr 02 Python
Python面向对象程序设计之私有属性及私有方法示例
Apr 08 Python
Django 权限认证(根据不同的用户,设置不同的显示和访问权限)
Jul 24 Python
对tensorflow中的strides参数使用详解
Jan 04 Python
PyQt使用QPropertyAnimation开发简单动画
Apr 02 Python
浅谈Python中的模块
Jun 10 Python
Python图像阈值化处理及算法比对实例解析
Jun 19 Python
简述python&pytorch 随机种子的实现
Oct 07 Python
Python离线安装各种库及pip的方法
Nov 28 Python
Python爬虫网络请求之代理服务器和动态Cookies
Apr 12 Python
如何用 Python 制作 GitHub 消息助手
Feb 20 #Python
详解tf.device()指定tensorflow运行的GPU或CPU设备实现
Feb 20 #Python
Python 的 f-string 可以连接字符串与数字的原因解析
Feb 20 #Python
安装不同版本的tensorflow与models方法实现
Feb 20 #Python
python爬虫scrapy基本使用超详细教程
Feb 20 #Python
解决pip安装tensorflow中出现的no module named tensorflow.python 问题方法
Feb 20 #Python
conda安装tensorflow和conda常用命令小结
Feb 20 #Python
You might like
写一段简单的PHP建立文件夹代码
2015/01/06 PHP
Yii多表联合查询操作详解
2016/06/02 PHP
php字符串操作针对负值的判断分析
2016/07/28 PHP
Smarty模板类内部原理实例分析
2019/07/03 PHP
Jquery 获取表单text,areatext,radio,checkbox,select值的代码
2009/11/12 Javascript
Extjs TriggerField在弹出窗口显示不出问题的解决方法
2010/01/08 Javascript
Extjs列表详细信息窗口新建后自动加载解决方法
2010/04/02 Javascript
Jsonp 跨域的原理以及Jquery的解决方案
2011/06/27 Javascript
Ajax请求在数据量大的时候出现超时的解决方法
2014/02/27 Javascript
基于JavaScript制作霓虹灯文字 代码 特效
2015/09/01 Javascript
Javascript ES6中对象类型Sets的介绍与使用详解
2017/07/17 Javascript
React Native AsyncStorage本地存储工具类
2017/10/24 Javascript
原生js封装添加class,删除class的实例
2017/11/06 Javascript
微信小程序使用wx.request请求服务器json数据并渲染到页面操作示例
2019/03/30 Javascript
微信小程序实现动态列表项的顺序加载动画
2019/07/25 Javascript
在vue中动态添加class类进行显示隐藏实例
2019/11/09 Javascript
[03:04]2018年国际邀请赛典藏宝瓶&莱恩声望物品展示 片尾有彩蛋
2018/06/04 DOTA
[02:08]什么藏在DOTA2 TI9“小紫本”里?斧王历险记告诉你!
2019/05/17 DOTA
python 通过类中一个方法获取另一个方法变量的实例
2019/01/22 Python
简单了解Python生成器是什么
2019/07/02 Python
python 将dicom图片转换成jpg图片的实例
2020/01/13 Python
Python ini文件常用操作方法解析
2020/04/26 Python
用Python 爬取猫眼电影数据分析《无名之辈》
2020/07/24 Python
PyTorch 导数应用的使用教程
2020/08/31 Python
CSS3 background-image颜色渐变的实现代码
2018/09/13 HTML / CSS
印度和世界各地的精美产品:Ikka Dukka
2018/02/12 全球购物
新西兰最大、占有率最高的综合性药房:PharmacyDirect药房中文网
2020/11/03 全球购物
土木工程建筑专业毕业生求职信
2013/10/21 职场文书
高三自我鉴定
2013/10/23 职场文书
幼儿园小班植树节活动方案
2014/03/04 职场文书
英语教师求职信
2014/06/16 职场文书
CSS3 制作的悬停缩放特效
2021/04/13 HTML / CSS
nginx搭建NFS网络文件系统
2022/04/14 Servers
Sentry的安装、配置、使用教程(Sentry日志手机系统)
2022/07/23 Python
教你使用RustDesk 搭建一个自己的远程桌面中继服务器
2022/08/14 Servers