关键词:
深夜,当我一个人拿着电脑打开小姐姐的直播间准备观赏的时候
突然直播的界面中传来各种各样的广告推荐和弹幕信息
遮挡住了小姐姐的脸庞,还关不掉?
这是脑子里就有了一个想法,何不爬取小姐姐直播间的信息源,然后通过本地的视频流播放器来收看小姐姐的直播呢?
于是就马上实行了这个计划,毕竟在不做就要天亮了
第一步:
首先,通过对于B站直播网页的分析,来获取小姐姐直播间的直播信号源。
打开我最爱的这位,如下图所示:
打开“开发者模式”,找到Network选项,点击XHR组件,找到live开头的标签内容,双击之后,就可以得到请求的信息。
可以看到,这个Request URL就是直播的信号源。
复制这个信号源地址,然后就可以通过本地的视频流播放器进行直播播放。
其实不用代码也可以
还有一种方式就是抓取直播信号源
直接上代码:
import requests,bs4,re,time
import xlwings as xw
from selenium import webdriver
from bs4 import BeautifulSoup
roomlist = []
# 获取bilibili动态页面
def gethtml(url):
#n = 0
try:
driver = webdriver.Chrome()
driver.get(url)
button_view = driver.find_element_by_xpath('//*[@id="room-list-section"]/div[1]/div/div[1]/div[2]')
button_view.click()
while True:
try:
button = driver.find_element_by_xpath('//*[@id="room-list-section"]/div[2]/div[1]/span[1]')
time.sleep(1)
#n += 1
button.click()
except:
break
html = driver.page_source
file_html = open(r'f:\\workspace\\example\\livehtml.txt','w+',encoding='utf-8')
file_html.write(html)
file_html.close()
driver.quit()
return html
except:
print('执行异常')
# 获取room详情并储存在一个2维列表里
def getroomlist(html):
soup = BeautifulSoup(html,"html.parser")
for li in soup.find('section',id = 'room-list-section').ul:
# 获取房间的主播名和房间名
pre_rt = r'title=".*"'
pattern1 =re.compile(pre_rt)
rt_match =re.findall(pattern1,str(li))
try:
if len(rt_match) == 0:
continue
else:
room_title = rt_match[0].split('"')[1]
anchor_name = rt_match[1].split('"')[1]
# 获取房间的人气值
pre_view = r'>\\d+<'
pattern2 = re.compile(pre_view)
vc_match = pattern2.search(str(li))
if vc_match == None:
continue
else:
pre_vc_value = vc_match.group(0)
vc_value = re.sub(r'>|<','',pre_vc_value)
roomlist.append([anchor_name,room_title,vc_value])
except:
print(anchor_name)
break
return roomlist
# 将房间信息保存在xlsx文件里方便后期处理和存储
def savelivelist(livelist):
app = xw.App(visible=True,add_book=False)
app.display_alerts = False
app.screen_updating = False
wb = app.books.open(r'f:\\workspace\\example\\live.xlsx')
sheet1 = wb.sheets['sheet1']
sheet1.range('A1').value = ['主播名','房间名','人气值']
sheet1.range('A2').value = livelist
wb.save()
wb.close()
app.quit()
print ('完成存储')
# 主函数
def main():
url = 'http://live.bilibili.com/all'
html = gethtml(url)
livelist = getroomlist(html)
#print(len(livelist))
savelivelist(livelist)
main()
python:20行代码爬取高质量帅哥美女视频,让你一次看个够(代码片段)
...然你学会了去爬啥那就都随便了~环境模块用到的环境是Python3.6和pycharm需要安装两个模块,requests和re模块,还会用到一个pprint模块,这个是内置的,不用安装,咱 查看详情
安卓手机在b站怎么直播
参考技术A手机在B站直播的步骤:1、打开B站,找到网站的右上角“直播”那一栏,点开它;2、然后把网页拉到最下面,在直播那一栏找到“直播帮助中心”并打开;3、打开后,找到左边的“工具教程”并打开;4、然后就会看... 查看详情
python爬虫应用实战-如何爬取好看的小姐姐照片?(代码片段)
线程锁Threading模块为我们提供了一个类,Threading.Lock锁。我们创建该类的对象,在线程函数执行之前,“抢占”该锁,执行完成之后,“释放”该锁,则我们确保了每次只有一个线程占有该锁。这时对一个公共对象进行操作,则... 查看详情
python爬虫应用实战-如何爬取好看的小姐姐照片?(代码片段)
...始锁是一个在锁定时不属于特定线程的同步基元组件。在python中,它是能用最低级的同步基元组件,由_thread拓展模块直接实现。acquire(blocking=True,timeout=-1)可以阻塞或者非阻塞的获得锁。当调用参数blocking设置为True,阻塞直到锁... 查看详情
7行代码搞崩溃b站,原因令人唏嘘!
△点击上方“Python猫”关注,回复“1”领取电子书作者:豌豆花下猫来源:Python猫前不久,哔哩哔哩(一般常称为B站)发布了一篇文章《2021.07.13我们是这样崩的》,详细回顾了他们在2021.07.13晚上全站... 查看详情
7行代码搞崩溃b站,原因令人唏嘘!
△点击上方“Python猫”关注,回复“1”领取电子书作者:豌豆花下猫来源:Python猫前不久,哔哩哔哩(一般常称为B站)发布了一篇文章《2021.07.13我们是这样崩的》,详细回顾了他们在2021.07.13晚上全站... 查看详情
python用20行代码实现完整邮件功能[完整代码+建议收藏]
大家好,我是Lex喜欢欺负超人那个Lex擅长领域:python开发、网络安全渗透、Windows域控Exchange架构今日重点:python脚本实现发送邮件,邮件添加附件,读取接收邮件等功能。包含完整脚本哦,【建议收藏】 今天带大家实现一下... 查看详情
社区说|wechaty:6行代码构建基于个人微信和whatsapp的对话式人机交互界面应用...
...(本周四)20:00pm-21:00pm活动日程20:00-20:45Wechaty:6行代码构建基于个人微信和Whatsapp的对话式人机交互界面应用 对话式人机交互界面趋势人工智能前沿发展ConversationAI场景Wechaty介绍LiveDemoChatbot行业前景20:45-21:00QA举办社区GDG... 查看详情
基于cordova的b站用户直播闹钟app(安卓版)(代码片段)
前言本项目基于Cordova开发,打包的apk支持Android9+,主要功能为监听b站用户直播情况,开播进行闹钟提示ps:目前版本还是有蛮多问题的,如有遇到可以及时反馈,我会想办法进行修复。源码下载码云GitH... 查看详情
基于cordova的b站用户直播闹钟app(安卓版)(代码片段)
前言本项目基于Cordova开发,打包的apk支持Android9+,主要功能为监听b站用户直播情况,开播进行闹钟提示ps:目前版本还是有蛮多问题的,如有遇到可以及时反馈,我会想办法进行修复。源码下载码云GitH... 查看详情
python爬虫应用实战-爬取网站漂亮小姐姐,可爱的小姐姐谁不爱呢?
前言有时候我们会用requests抓取页面的时候,得到的结果可能和浏览器中看到的不一样:在浏览器中可以看到正常显示的页面数据,但是使用requests得到的结果并没有。这是因为requests获取的是原始的HTML文档,而浏览器中的页面... 查看详情
js实现b站直播弹幕自动补中括号一键常用语脚本(代码片段)
....2控制台版本-v1.1游猴脚本-v1.1前言开发目的:方便b站直播间同传,提高效率程序试用于大部分新版的PC浏览器(ps:如果没有生效请刷新页面重试,如果不兼容请更换浏览器)使用说明:打开直播页面... 查看详情
js实现b站直播弹幕自动补中括号一键常用语脚本(代码片段)
....2控制台版本-v1.1游猴脚本-v1.1前言开发目的:方便b站直播间同传,提高效率程序试用于大部分新版的PC浏览器(ps:如果没有生效请刷新页面重试,如果不兼容请更换浏览器)使用说明:打开直播页面... 查看详情
js实现b站直播弹幕自动补中括号一键常用语脚本(代码片段)
...控制台版本-v2.1游猴脚本-v2.1前言开发目的:方便b站直播间同传,提高效率程序试用于大部分新版的PC浏览器(ps:如果没有生效请刷新页面重试,如果不兼容请更换浏览器)使用说明:打开直播页面... 查看详情
b站直播姬怎么用
...式中选择“麦克风”,之后点击确定即可,用户就可以在直播间开始唱歌啦。b站简介哔哩哔哩(NASDAQ:BILI;HKEX:9626),英文名称:bilibili,简称B站,是中国年轻世代高度聚集的文化社区和视频网站,该网站于2009年6月26日创建,... 查看详情
仅用几行python代码就能帮小姐姐复制u盘文件,实用干货(代码片段)
...想直接分享出方法,大家一起受益。首先分两步,写出Python代码,其次把.py文件转换成exe文件,直接在wind 查看详情
b站直播有专门用来设置主播开播时间的插件吗?
...合,他可以设置主播开播时间和下播时间,插件自定义在直播间顶部或者底部显示。 参考技术B在b站里面直播的时间是不确定的。不同的主播,他们有着不同的直播时间。只要关注他们,随时去看一下,就知道他们什么时候直播... 查看详情
bilibili直播姬怎么播英雄联盟
b站有很多有趣的直播,那么有没有想自己开启直播?阿勒?不知道怎么开启直播啊,没事,看下去就知道怎么直播了。工具/原料moreb站 直播设置 开启直播 使用设备:手机方法/步骤1/7分步阅读首先,打开b站2/7进入到... 查看详情