利用DrissionPage库写一个简单的哔哩哔哩自动评论引流脚本

以前利用selenium写过哔哩哔哩简单的脚本,后来数据丢失,痛苦万分,今天看到这个库了解一下便写了这个脚本。

切记做好数据备份

文章目录

    • DrissionPage简介:
    • 代码部分

DrissionPage和selenium很像,但是更简单,配置也是

DrissionPage简介:

DrissionPage 是一个基于 python 的网页自动化工具。

  • 它既能控制浏览器,也能收发数据包,还能把两者合而为一。

  • 可兼顾浏览器自动化的便利性和 requests 的高效率。

  • 它功能强大,内置无数人性化设计和便捷功能。

  • 它的语法简洁而优雅,代码量少,对新手友好。

代码部分

为避免风险,将元素替换为汉字了,仅供学习
建了一个公众号,后续会在上面更新一些有用资源和笔记,大家有兴趣的话可以加一下谢谢了。
在这里插入图片描述


from DrissionPage import ChromiumPage
from urllib.parse import quote
import pickle
import timepage = ChromiumPage()
list = ["口袋觉醒"]# 遍历listfor i in list:original_str = iencoded_str = quote(original_str)input_url = "https://search.bilibili.com/all?vt=25182142&keyword=" + encoded_str + "&from_source=webtop_search&spm_id_from=333.1007&search_source=5"page.get(input_url)time.sleep(3)# 获取所有class为bili - video - card__info - -tit的元素videoTitle = page.eles('.bili视频卡片__信息--标题')print(len(videoTitle))# 遍历videoTitlefor index in range(len(videoTitle)):# 每次循环前重新获取元素列表,防止引用失效videoTitles = page.eles('.bili视频卡片__信息--标题')videoTitles[index].click()page.wait.new_tab()  # 等待新标签页出现tab = page.get_tab(page.latest_tab)  # 获取指定标签页对象# 弹幕barrage = tab.ele('.bpx-播放器-弹幕-输入')if barrage:barrage.click()barrage.input("开心")send = tab.ele('.bui-区域 bui-蓝色按钮')send.click()time.sleep(1)# 评论区pinglun = tab.ele('.回复框-文本区域')pinglun.scroll.to_see()pinglun.click()tab.ele('.回复框-文本区域 焦点').input("ll")publish = tab.ele('.回复框-发送 发送-激活').ele('.发送文本')time.sleep(3)publish.click()tab.close()time.sleep(3)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/501380.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

女性三八节礼物攻略:她无法抗拒的五大礼物

随着春风的温柔拂面,我们即将迎来一年一度的三八国际妇女节。这个特别的日子,不仅是对女性贡献的认可和庆祝,也是向我们生命中的女性表达感激和爱意的绝佳时机。在这个充满温馨和敬意的时刻,我们常常在思考,如何用一份…

找工作的小伙伴有福利了

简历模块 资料说明 ✅内容:300多套简历模块,包含单页简历150套、双页简历15套、三页简历25套、四页简历50套、表格简历15套、自荐信20 套,封面简历、英文简历150 ✅文件格式:word ✅ 文件大小:449MB 资料文件展示 资…

Redis冲冲冲——Redis的主从复制,哨兵模式以及SpringBoot的配置

目录 引出Redis的主从复制,哨兵模式以及SpringBoot的配置Redis的主从复制Redis的哨兵模式SpringBoot配置 缓存三兄弟:缓存击穿、穿透、雪崩缓存击穿缓存穿透缓存雪崩 总结 引出 Redis冲冲冲——Redis的主从复制,哨兵模式以及SpringBoot的配置…

java实际项目反射、自定义注解的运用实现itext生成PDF的详细应用教程

开篇引语 小伙伴在学习java是否有这样的困混不知道反射是干嘛的,不知道注解有什么用。导致很多人看 java基础的时候迷迷糊糊,那是你还没有在实际项目中遇到,不知道该如何使用它们。接下来我会为你们详细讲解实际项目中是如何运用反射和自定义…

基于Camunda实现bpmn 2.0各种类型的任务

基于Camunda实现bpmn中各种类型任务 ​ Camunda Modeler -为流程设置器(建模工具),用来构建我们的流程模型。Camunda Modeler流程绘图工具,支持三种协议类型流程文件分别为:BPMN、DMN、Form。 ​ Camunda Modeler下载…

怕没经验?请看这根伦敦银实操指南

伦敦银是带有高杠杆、可以双向操作的投资品种,这就决定了其买卖过程涉及一定的技术,投资者参与其中需要具备有一定的交易技巧和经验。新手投资者如果缺少经验,在入市前没有信心,可以先看看以下的操作指南。 伦敦银投资者入市前应该…

持安科技亮相张江高科895创业营,总评分第三名荣获「最具创新性企业」!

近日,张江高科895创业营(第十三季)信息安全专场Demo day&结营仪式在上海集成电路设计产业园圆满落幕。本季创业营通过多种渠道在海内外甄选优秀创业项目,一共择优录取了29家入营,最终甄选出9家代表参加Demo day路演…

基于java Springboot实现课程评分系统设计和实现

基于java Springboot实现课程评分系统设计和实现 博主介绍:多年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 欢迎点赞 收藏 ⭐留言 文末获取源…

crc16计算

crc16计算,以生成式G(x)x16x15x21,为例 1、函数如下: //crc:G(x) x16x15x21 #define POLY 0x8005 //对应的生成式的多项式,可以查(在在线计算crc工具下查) unsigned short crc16_2(unsigned char *da…

《Spring Security 简易速速上手小册》第4章 授权与角色管理(2024 最新版)

文章目录 4.1 理解授权4.1.1 基础知识详解授权的核心授权策略方法级安全动态权限检查 4.1.2 主要案例:基于角色的页面访问控制案例 Demo 4.1.3 拓展案例 1:自定义投票策略案例 Demo测试自定义投票策略 4.1.4 拓展案例 2:使用方法级安全进行细…

代码随想录算法训练营第四十七天|198. 打家劫舍、213. 打家劫舍 II、337. 打家劫舍 III。

198. 打家劫舍 题目链接:打家劫舍 题目描述: 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷…

光耦合器在电路板上的作用

在不断创新的电子世界中,一个关键组件在确保电子设备无缝运行方面默默地发挥着至关重要的作用:光耦合器。光耦合器经常被普通消费者忽视,它是电路板上的无名英雄,在维护电子系统的完整性和安全性方面发挥着关键作用。 什么是光耦合…