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

 更新时间:2021年02月20日 11:31:15   作者:Martina_oh  
这篇文章主要介绍了python如何实现b站直播自动发送弹幕,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下

基本开发环境

· 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 自动发送弹幕的资料请关注脚本之家其它相关文章!

相关文章

  • 详解Python中type与object的恩怨纠葛

    详解Python中type与object的恩怨纠葛

    估计很多人都会有这样一个困惑,object 的类型是 type,但它同时又是 type 的基类,这是怎么做到的?带着这个疑问,我们开始本文的内容
    2023-04-04
  • 用python对oracle进行简单性能测试

    用python对oracle进行简单性能测试

    这篇文章主要介绍了用python对oracle进行简单性能测试的示例,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-12-12
  • Python写一个简单的在线编辑器

    Python写一个简单的在线编辑器

    这篇文章主要介绍了如何利用Python写一个简单的在线编辑器,主要通过pywebio程序,实现了Python的简陋在线编辑器,需要的小伙伴可以参考一下,希望对你有所帮助
    2022-02-02
  • python opencv画局部放大图实例教程

    python opencv画局部放大图实例教程

    这篇文章主要给大家介绍了关于python opencv画局部放大图的相关资料,获取鼠标的单击相应以及鼠标的移动信息,进行放大功能的实现,需要的朋友可以参考下
    2021-10-10
  • python十进制和二进制的转换方法(含浮点数)

    python十进制和二进制的转换方法(含浮点数)

    这篇文章主要介绍了python十进制和二进制的转换方法(含浮点数),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • Python算法之图的遍历

    Python算法之图的遍历

    这篇文章主要介绍了Python算法之图的遍历,涉及遍历算法BFS和DFS,以及寻找图的(强)连通分量的算法等相关内容,具有一定参考价值,需要的朋友可以了解下。
    2017-11-11
  • python 如何将字典写为json文件

    python 如何将字典写为json文件

    这篇文章主要介绍了python 如何将字典写为json文件的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • python优化测试稳定性的失败重试工具pytest-rerunfailures详解

    python优化测试稳定性的失败重试工具pytest-rerunfailures详解

    笔者在执行自动化测试用例时,会发现有时候用例失败并非代码问题,而是由于服务正在发版,导致请求失败,从而降低了自动化用例的稳定性,那该如何增加失败重试机制呢?带着问题我们一起探索
    2023-10-10
  • python发腾讯微博代码分享

    python发腾讯微博代码分享

    本文介绍了利用qwebview写的一个发腾讯微博的功能,大家可以改成新浪微博,原理是一样的,大家参考使用吧
    2014-01-01
  • python 淘宝爬虫小实例

    python 淘宝爬虫小实例

    双十一即将到来,电商都在做活动打折,但打完折是不是真的优惠了,需要我们自己斟酌,毕竟我们不能一直关注着价格,也自然不能知道现在的价格比以前高了还是低了,今天让我们用Python来爬取一下淘宝吧
    2021-11-11

最新评论