命定邂逅-与Python的“情投意合”

我是一名眼科医学的研究生,同时,我也是一名拥有1.4万粉丝的B站UP主。

研究生备考期间,我常常会利用休息时间去搜集一些和自己喜欢的歌手相关的影音视频, 以此来激励自己继续坚持。

经过近半年的时间在全网通过各种途径人工搜集,我已经典藏了市面上90%与之相关的影像资料。

在不太久远的过去——大概也就是十多年前,互联网精神代表着自由、平等、共享——人人为我,我为人人。维基百科、CC协议、FTP服务器,包括开源软件,都是那个时代的产物。

深受这种共享精神的感染,我也希望能和更多志同道合的人分享这些资源,于是就想到了在B站以转载的形式发布。

不过,想要更好地利他,吸引到更多有相同爱好的人来我的弹幕里团建,还有很多的路要走。

学以致用-Python成就我的自媒体之路

刚开始只是对编程很感兴趣,结果越深入地学习,越是感受到了Python的功能强大,特别是运营B站账号的过程中Python也起到了非常大的帮助。

为了增加与观众的互动指数,我运用学到的post方法做了自我视频评论点赞&自动回复这一功能。

如果想要实现这个功能,就需要结合爬虫课的静态页面数据抓取,先进行页面选择、分析,再点赞。

页面选择

由于目的是增加UP主与观众的活跃指数,所以只需要对所有“我发布的视频的评论”进行点赞即可,相当于是对UP主所有作品的评论进行点赞。

那么选择操作页面的话,使用创作者中心的评论管理页面是最简洁不过的了,因为这里的评论是按时间先后排序的。

而如果将操作页面设定为某个视频的页面的话,就难以获取最新评论,而且一个UP主会有多条视频,也会增加任务难度。

分析

通过点击下一页按钮,成功找到评论数据的请求地址。

获得了每条评论的的详细信息(评论ID,视频ID,评论者ID,评论者是否为粉丝,父级评论ID,等等)后,接下来就需要找到点赞动作的请求地址了。

点赞

进行点赞动作,找到action动作对应的请求URL地址和请求数据。

接下来就进入到代码编写的环节了。

获取评论信息的原理和课程里是一样的,用BeautifulSoup解析并提取页面即可,关键是这个csrf的值该如何获得呢?

csrf提取

  • 调用selenium手动更新cookie
  • 程序运行首先会查看根目录下是否存在cookie备份文件,若存在则读取,若不存在则创建。

  • 当首次运行程序或是cookie过期,则调用selenium手动更新cookie:

这样一来,csrf和cookie的值我们都获取到了。

面向对象编程:定义Bili_Auto类

Bili_Auto具有以下功能函数:

  • log_in() #模拟登录,进入B站创作者中心的评论管理页面
  • get_reply_info(pn, ps) #获取指定页面的评论信息,参数pn为页码,ps为每页评论数(最大50)
  • check_newreply(pn, ps) #检查新评论。
  • auto_heart(pn, ps) #核心功能,评论自动点赞,并打印出评论id,评论内容的前10个字符,以及评论者的前4个字符。并不给UP自己的评论点赞(防止被说自恋)
  • auto_reply(pn, ps) #自动回复评论。为了进一步增加互动指数,给每个评论都进行表情“[嘟嘟]”的评论回复。

由于B站不能短时间内重复评论相同内容,所以每次[嘟嘟]的数量从1-10随机取值并与前一次的数量不等。

评论会有父级和子级之分,在get_reply_info里能够获取父级评论的信息,将父级评论信息直接@在自动回复的内容前面即可,B站会自动将其转为蓝色的用户符形式。

Bili_Auto类之外的函数有:

  • update_cookie() #如前述
  • gui() #软件运行时的伪交互界面,直接输入数字即可进行服务选择。

最后,用pyinstaller对代码进行打包,生成.exe的执行文件,将chrome驱动与exe放在同一个文件夹里,即可运行程序。

学尽其才-用知识实现天马行空的想象

从2021年4月考研上岸至今,我的粉丝量已经达到了1.4万,作为一个普通的B站分享创作者账号来说,我觉得也算是小有成就。

后面我还打算使用selenium进行模拟登录后台、上传、填表、提交,以此来实现B站后台视频批量自动上传,以及视频信息的自动填充与提交这一功能。

不过由于开学后一直忙于眼科和人工智能结合这一部分的课题研究,还没有来得及把这个构思付诸实践,对于偶尔会出现的验证码问题也需要进一步学习才能攻克。

而每一次不断查阅资料、修改代码,最后终于实现的这个过程,真的是让人恍若进入了另一个时空,全然不知外面的天黑了又亮,亮了又黑!

思维的碰撞没有边界,探索的步伐永不停歇 !

未来我还要用Python去实现更多天马行空的想象<( ̄︶ ̄)↗[GO!]

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、Python必备开发工具

三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。(文末领读者福利)

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(文末领读者福利)

五、Python练习题

检查学习结果。

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。 (文末领取哦)

这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

故事分享|B站up主的感悟:粉丝从0到1.4万,我做对了什么?相关推荐

  1. 【报告分享】2020年B站UP主价值研究报告.pdf(附下载链接)

    大家好,我是文文(微信号:sscbg2020),今天给大家分享bilibili和新榜于2021年1月份联合发布的报告<2020年B站UP主价值研究报告:以年轻人感兴趣的优质内容建立信任.pdf& ...

  2. 盘点B站up主常用的免费录屏软件,自用工具分享

    盘点B站up主常用的免费录屏软件,自用工具分享! 今天分享 4 款超好用的免费录屏软件,能够满足大部分同学录制教学视频.游戏视频.网络课程等录制场景的需求. 而且,这 4 款录屏软件还是主播.自媒体达 ...

  3. B站Up主-山地人-这位老哥2019年的前端自学计划进展如何?——讲一个B站Up主自学前端85天的故事...

    前言 自从上次在掘金发布[2019年山地人的前端完整自学计划--讲一个B站UP主山地人的40天前端自学故事] 以来,一眨眼山地人老哥在B站做Up主已经有85天了. 时隔一个半月,这位山地人老哥现在究竟 ...

  4. B站up主硬核打造「螃蟹火星车」,遥控、拍照、测距,还能做人脸检测;网友:赛博螃克...

    鱼羊 白交 发自 凹非寺 量子位 报道 | 公众号 QbitAI 吃完的螃蟹壳是干垃圾还是湿垃圾? 或者,裹上一层黑科技,让它变身「火星车」,馋哭隔壁家小孩. 更硬核的是,这样一台螃蟹火星车,并非只是 ...

  5. B站UP主都在关注的微信公众号

    Hi everybody! 一眨眼五一都过去好几天了, 不知道大家五一都去哪玩了. 反正小编我屏蔽了朋友圈, 在家逛B站,狂刷新番,宅出了新高度. 无意间看到了一个微信公众号, 好多B站UP主都关注了 ...

  6. 品牌方如何筛选高性价比商业UP主?拆解影响B站up主广告报价的因素

    导语 粉丝少.报价高的UP主广告效果会更好吗?相同的粉丝量级下,为何投放效果差别那么大?面对五花八门的UP主报价,飞瓜数据(B站版)从多个角度分析影响了UP主报价的因素,方便大家从中获取更快捷的方法筛 ...

  7. 在我的世界中,B站UP主搭建世界首个纯红石神经网络,图灵奖得主Yann LeCun转赞...

    机器之心报道 编辑:杜伟 神奇的红石,神奇的我的世界,不可思议的 UP 主. 在我的世界(Minecraft)中,红石是一种非常重要的物品.它是游戏中的一种独特材料,开关.红石火把和红石块等能对导线或 ...

  8. 周涨粉超30w B站UP主非非宇Fay粉丝增长密码是什么?

    飞瓜数据发布2021年12.06-12.12B站平台全部行业UP主涨粉榜周榜,分别从UP主涨粉总人数.粉丝人数增量.粉丝人数增长率等客观数据维度展示B站UP主涨粉数据情况. 本周UP主非非宇Fay位居 ...

  9. 26 岁年薪百万!华为最新“天才少年”曝光,学霸兼 B 站 UP 主,还爱跳街舞

    整理 | 朱珂欣 出品 | CSDN程序人生(ID:coder_life) 科技的浪潮之下,可谓是"得人才者得天下",各大厂.巨头公司们聚天下英才而用之,希望借此创造佳话,而华为就 ...

最新文章

  1. 32拟合分析_SigmaPlot14.5:指导用户逐步完成图形创建和数据分析过程
  2. 如何将csv包含的数据导入SAP Cloud Platform HANA MDC里
  3. jQuery EasyUI使用教程之基本的拖放
  4. PC版微信,也终于上线了这个超赞的功能
  5. 判断网页是否为微信内置浏览器打开?
  6. ngxin防止并发(白名单,前端有代理)
  7. cnn stride and padding_经典CNN网络解析
  8. NetScaler Networking Deployment
  9. [转]浅谈算法和数据结构: 八 平衡查找树之2-3树
  10. Matlab中freqz函数使用
  11. linux 判断硬链接文件,如何判断硬链接(hard link)文件?
  12. ubuntu resolution
  13. 快捷c语言中控程序,CREATOR快捷\creator\CR-PGMII\ST-7600C\CREATOR中控
  14. linux与windows笔记本连线共享wifi
  15. 盘是什么意思计算机网络,hdd网络上什么意思
  16. Django models中的null和blank的区别
  17. jquery图片放大缩小旋转功能实现
  18. 视觉学习笔记4——学习研究ORB-SLAM3
  19. Ubuntu Linux 双网卡 局域网 共享上网 很简单的操作
  20. IBM X60驱动程序的安装

热门文章

  1. 全球与中国萃取塔市场现状及未来发展趋势(2022)
  2. 公立计算机大学排名,全国公办软件工程大学排名
  3. 解释:什么是CPC,CPA,CVR,CTR,ROI? 营销、广告、淘宝 术语
  4. D. Harmonious Graph【并查集】
  5. 阿里对高管的要求,不得不服
  6. 读书笔记:《招聘面试新法》
  7. 银行业用户井喷式发展——解密巨杉数据库为何收获银行用户青睐
  8. 使用搜狗浏览器的教育网代理进行下载
  9. Linux_CentOS7 的桌面图标怎样变小/变小的方法
  10. [Android]天气App 1