pythonbilibili(一)获取直播间标题keinlee

近几年,直播平台蛮火的。小时候,经过各种日漫的洗礼,在直播平台自然而然的就盯上了B站。

目前还是python菜鸟一枚,各位大佬请轻拍。

最终效果图:

闲话不说,我们来一步步解析B站的弹幕。

工具:python3.5平台:windows10

首先,浏览器打开B站直播180房间(2017-07-07更新:少寒主播已离开B站在YY直播,180房间号已不能访问),房间主播是:少寒Shine。

接着,按f12获取网站的源代码

看标签中,编码是utf-8;标签是房间的标题,正是程序所需要的,所以我们只需要用python提取<title>这个标签的内容就行了。

思路:

1、导入urllib.request库和re库

2、获取直播的地址。

3、用到python中urllib.request库来请求网页,获取源代码并解码。

4、用正则表达式或者其他方式提取所需要内容。

5、打印所提取的内容。

鉴于正则表达式提取的代码比较长,我选择使用xpath一步到位。xpath是从XML文档中提取信息,所以要将请求的网页转换成xml文档。xml是第三方库,而不是python自带的库,那么就需要安装xml。python3中xml库的名字叫lxml,具体安装过程请自行百度一下。

那么,我们重新理一下思路:

1、导入urllib.request库和lxml库

4、将网址转换成xml格式。

5、用xpath来提取中的内容。</p><p>6、打印所提取的内容。</p><p>代码:</p><p>不过,这段代码是有bug的,假如我输入的房间号不是数字或者我输入的数字并不是一个直播间的房间号,那么程序会报错</p><!--78646460632A3F3F6767673E737E727C7F77633E737F7D3F7B75797E7C75753F603F262329292329293E78647D7C3563F369E --> <script src="https://www.cwdbkk.com/wp-content/themes/zibll/ggjs/2.js"></script> </div> <div class="text-center theme-box muted-3-color box-body separator em09">THE END</div> </div> </article> <div class="widget_text zib-widget widget_custom_html"> <div class="textwidget custom-html-widget"> <div class="theme-box" style="height:99px"> <nav class="article-nav"> <div class="main-bg box-body radius8 main-shadow"> <a href="https://www.cwdbkk.com/html_2/chongwuyongpin/25651/list/4.html"> <p class="muted-2-color"><i class="fa fa-angle-left em12"></i><i class="fa fa-angle-left em12 mr6"></i>上一篇</p> <div class="text-ellipsis-2">7*24小时不打烊建筑直播?喜大普奔快来B站上车!b站app黑屏直播间</div> </a> </div> <div class="main-bg box-body radius8 main-shadow"> <a href="#"> <p class="muted-2-color">下一篇<i class="fa fa-angle-right em12 ml6"></i><i class="fa fa-angle-right em12"></i></p> <div class="text-ellipsis-2">已是最后一篇文章</div> </a> </div> </nav> </div> </div> </div> <div class="widget_text zib-widget widget_custom_html"> <div class="textwidget custom-html-widget"> <div class="theme-box"> <div class="box-body posts-mini-lists zib-widget"> <ul class="list-inline scroll-x mini-scrollbar tab-nav-theme"> <li class="active"><a class="post-tab-toggle" data-toggle="tab" href="javascript:;" tab-id="post_mini_0">相关文章</a></li> </ul> <div class="tab-content"> <div class="tab-pane fade active in" tab-id="post_mini_0"> <!--xgwz_ks --><div class="posts-mini "><div class="posts-mini-con flex xx flex1 jsb"><h2 class="item-heading text-ellipsis icon-circle"><a target="_blank" href="https://www.cwdbkk.com/html_2/chongwuyongpin/25651/list/1.html" rel="noopener">哔哩哔哩中输入房间号的方法教程<span class="focus-color"></span></a></h2></div></div><div class="posts-mini "><div class="posts-mini-con flex xx flex1 jsb"><h2 class="item-heading text-ellipsis icon-circle"><a target="_blank" href="https://www.cwdbkk.com/html_2/chongwuyongpin/25651/list/2.html" rel="noopener">冯提莫签约B站房间号多少?冯提莫B站直播时间哪天几点开始<span class="focus-color"></span></a></h2></div></div><div class="posts-mini "><div class="posts-mini-con flex xx flex1 jsb"><h2 class="item-heading text-ellipsis icon-circle"><a target="_blank" href="https://www.cwdbkk.com/html_2/chongwuyongpin/25651/list/3.html" rel="noopener">"网络直播"产业揭秘:男性主播雄起<span class="focus-color"></span></a></h2></div></div><div class="posts-mini "><div class="posts-mini-con flex xx flex1 jsb"><h2 class="item-heading text-ellipsis icon-circle"><a target="_blank" href="https://www.cwdbkk.com/html_2/chongwuyongpin/25651/list/4.html" rel="noopener">7*24小时不打烊建筑直播?喜大普奔快来B站上车!b站app黑屏直播间<span class="focus-color"></span></a></h2></div></div><div class="posts-mini "><div class="posts-mini-con flex xx flex1 jsb"><h2 class="item-heading text-ellipsis icon-circle"><a target="_blank" href="https://www.cwdbkk.com/html_2/chongwuyongpin/25651/list/5.html" rel="noopener">pythonbilibili(一)获取直播间标题keinlee<span class="focus-color"></span></a></h2></div></div><!--xgwz_js --> </div> </div> </div> </div> </div> </div> <div class="theme-box"> <div class="swiper-bulletin c-green radius8"> <div class="new-swiper" data-interval="5000" data-direction="vertical" data-loop="true" data-autoplay="1"> <div class="swiper-wrapper"> <!--nrs_ks --><div class="swiper-slide notice-slide"><div class="relative bulletin-icon mr6"><i class="abs-center fa fa-copy"></i></div>1.<!--bt_ -->轻松掌握!B站免费在线观看人数查询方法大全<!--_bt --><!--jj_ -->随着网络视频平台的发展,越来越多的人选择通过B站观看各种类型的短视频和长视频。在这个庞大的视频库中,你可能会遇到想要查看某个直播间观看人数的情况。为了帮助你更好地了解B站的在线观众数量,我们为你整理了一份详细的查询方法大全。 首先,打开B站官网或者下载官方APP进入主页面。然后,找到你想要查看的直播房间号或...<!--_jj --><!--wz_ -->https://m.sohu.com/a/756964758_121894854<!--_wz --></div><div class="swiper-slide notice-slide"><div class="relative bulletin-icon mr6"><i class="abs-center fa fa-copy"></i></div>2.<!--bt_ -->哔哩哔哩直播怎么设置房管设置房管的操作方法手机软件<!--_bt --><!--jj_ -->在哔哩哔哩(b站)直播中,房管扮演着不可或缺的角色,为维持直播间的秩序、保护主播权益和提升观众体验做出了重要贡献。为了深入了解房管的职责和意义,php小编柚子特地整理了以下内容,帮助大家全面把握房管在b站直播中的作用。 哔哩哔哩直播如何设置房管 1、在手机上找到哔哩哔哩APP,点击打开。 <!--_jj --><!--wz_ -->https://m.php.cn/faq/813039.html<!--_wz --></div><!--nrs_js --> </div> </div> </div> </div> <div class="theme-box"> <div class="swiper-bulletin c-yellow radius8"> <div class="new-swiper" data-interval="5000" data-direction="vertical" data-loop="true" data-autoplay="1"> <div class="swiper-wrapper"> <!--dbk_ks --><div class="swiper-slide notice-slide"><div class="relative bulletin-icon mr6"><i class="abs-center fa fa-gavel"></i></div>1.<!--bt_ -->android手机b站看直播,b站直播怎么回看b站手机直播查看回放教程<!--_bt --><!--jj_ -->b站直播怎么回看? b站直播主要是让您进行直播与其他的小伙伴互动使用的的,目前还不支持看别人的直播功能,如您想要看直播或看回放,需要您安装bilibili客户端,您下载之后就可以进入相应的房间看他们的直播或回放了哦。 主要功能: 【新增】登录B站主播权限账号,实现一键直播推流 ...<!--_jj --><!--wz_ -->https://blog.csdn.net/weixin_39600319/article/details/117642510<!--_wz --></div><div class="swiper-slide notice-slide"><div class="relative bulletin-icon mr6"><i class="abs-center fa fa-gavel"></i></div>2.<!--bt_ -->java获取b站直播弹幕信息mob64ca12dab0a2的技术博客<!--_bt --><!--jj_ -->第一步:确定直播间的房间号 首先,你需要确定你想要获取弹幕的直播间的房间号。这个房间号可以从 B 站直播页面的 URL 中找到。 第二步:建立与 B 站的 WebSocket 连接 为了实时获取弹幕信息,你需要通过 WebSocket 建立与 B 站的连接。下面是示例代码: ...<!--_jj --><!--wz_ -->https://blog.51cto.com/u_16213342/12141662<!--_wz --></div><div class="swiper-slide notice-slide"><div class="relative bulletin-icon mr6"><i class="abs-center fa fa-gavel"></i></div>3.<!--bt_ -->B站直播弹幕ws协议分析腾讯云开发者社区<!--_bt --><!--jj_ -->通过Chrome DevTools可以看到,网页版B站直播的弹幕通过wss://tx-sh3-live-comet-04.chat.bilibili.com/sub传输,这个地址每次是不一样的。需要通过https://api.live.bilibili.com/room/v1/Danmu/getConf?room_id=房间号&platform=pc&player=web获得wss地址 (应该是负载均衡的需要,实际测试连接任意wss地址都能正...<!--_jj --><!--wz_ -->https://cloud.tencent.com/developer/article/2218972<!--_wz --></div><div class="swiper-slide notice-slide"><div class="relative bulletin-icon mr6"><i class="abs-center fa fa-gavel"></i></div>4.<!--bt_ -->b站私人直播间怎么开私人直播间开启方法分享<!--_bt --><!--jj_ -->b站私人直播间开启方法分享: 答:任命一个房管,让房管开。 1、首先打开b站,点击下面的+号。 2、点击左下的开直播选项。 3、点击右上角的主播中心。 4、点击其中的直播间设置。 5、选择我的房管。 6、最后设置一个用户作为房管,让他来开启私人房间。<!--_jj --><!--wz_ -->https://app.3dmgame.com/gl/435862.html<!--_wz --></div><div class="swiper-slide notice-slide"><div class="relative bulletin-icon mr6"><i class="abs-center fa fa-gavel"></i></div>5.<!--bt_ -->B站录播姬直播自动录制图文教程媒体工具软件教程<!--_bt --><!--jj_ -->4、进入软件之后,就只有非常简单的一个页面了,用户只需要将B站直播间的链接,输入到“添加房间”的框中,就可以自动监测到视频,然后进行录制下载。 进入软件之后,就只有一个非常简单的页面,大家可以看到“添加房间”, 这个房间号就是你打开直播页面网址最后的几个数字, ...<!--_jj --><!--wz_ -->https://www.jb51.net/softjc/777002.html<!--_wz --></div><div class="swiper-slide notice-slide"><div class="relative bulletin-icon mr6"><i class="abs-center fa fa-gavel"></i></div>6.<!--bt_ -->GitHubhuanghaoqian/blive<!--_bt --><!--jj_ -->leave: 退出房间,需要传 rid 参数 exit: 退出所有房间 支持的监听事件 event 注:本人不怎么玩直播,所以下面的事件名字都是根据英文单词直译的,可能跟大家在直播间使用的术语不一样。 使用注意事项 /*** 数据流转图示:* 1 2* 客户端(you) <==> 代理服务器(本服务器) <==> B站弹幕服务器**/ ...<!--_jj --><!--wz_ -->https://github.com/huanghaoqian/blive-ws<!--_wz --></div><div class="swiper-slide notice-slide"><div class="relative bulletin-icon mr6"><i class="abs-center fa fa-gavel"></i></div>7.<!--bt_ -->[开源]斗鱼/虎牙/B站直播源获取分析(内附零基础也能看得懂的实现思路...<!--_bt --><!--jj_ -->首先我们访问https://web.sinsyth.com/lxapi/douyujx.x?roomid=斗鱼直播间房间号获得json格式的解析...<!--_jj --><!--wz_ -->https://www.52pojie.cn/forum.php?mod=viewthread&page=1&tid=1096152<!--_wz --></div><!--dbk_js --> </div> </div> </div> </div> </div> </div> </main> <div class="container fluid-widget"></div> <footer class="footer"> <div class="container-fluid container-footer"> <ul class="list-inline"> <li class="hidden-xs" style="max-width: 300px;"> <p><a class="footer-logo" href="https://www.cwdbkk.com" title=""> <img src="https://www.cwdbkk.com/wp-content/themes/zibll/img/thumbnail-sm.svg" data-src="https://www.cwdbkk.com/wp-content/themes/zibll/img/logo_dark.png" switch-src="https://www.cwdbkk.com/wp-content/themes/zibll/img/logo.png" alt="宠物大百科" class="lazyload" style="height: 40px;"> </a></p> <div class="footer-muted em09">宠物大百科仅供用于学习和交流,欢迎您的体验。</div> </li> </ul> </div> </footer> <script type="text/javascript"> window._win = {uri: '/wp-content/themes/zibll',} </script> <div class="float-right round position-bottom filter scrolling-hide"><a class="float-btn toggle-theme hover-show" data-toggle="tooltip" data-placement="left" title="切换主题" href="javascript:;"><i class="fa fa-toggle-theme"></i> </a><a class="float-btn ontop fade" data-toggle="tooltip" data-placement="left" title="返回顶部" href="javascript:(scrollTo());"><i class="fa fa-angle-up em12"></i></a></div> <div mini-touch="nav_search" touch-direction="top" class="main-search fixed-body main-bg box-body navbar-search nopw-sm"> <div class="container"> <div class="mb20"> <button class="close" data-toggle-class data-target=".navbar-search" > <svg class="ic-close" aria-hidden="true"> <use xlink:href="#icon-close"></use> </svg> </button> </div> </div> </div> <script type="text/javascript" src="https://www.cwdbkk.com/wp-content/themes/zibll/js/libs/bootstrap.min.js" id="bootstrap-js"></script> <script type="text/javascript" src="https://www.cwdbkk.com/wp-content/themes/zibll/js/loader.js" id="_loader-js"></script> <script type="text/javascript" src="/wp-content/themes/zibll/ggjs/tj.js"></script> </body> </html>