听说B站视频的完成率也是一项挺重要的指标,下面来提高它

听说B站视频的完成率也是一项挺重要的指标,下面来提高它

听很多朋友说,B站播放完成率也是一项挺重要的指标,听说B站也有使用播放完成率作为评判视频是否为低创的一个条件,那么怎么可能让我们的视频被评判为低创呢?
那么,必须就需要来提高它了。当然作为一个互联网人,怎么可能自己手动来播放视频来提高播放完成率呢?

下面就让我们一起动手干它吧。

主要思路:自动循环播放所有需要提高完成率的视频,点击播放之后,再点击二倍速播放,提高播放时间,同时为每一个视频的播放时间设定为该视频时间长度的一半,这样子就可以使得每个视频都能够播放完成。这样子完成率就能够慢慢地提高了。

准备工作(python)
1.安装selenium模块;
2.安装浏览器以及对应的浏览器驱动;

准备工作

import time,random
from selenium import webdriver
from selenium.webdriver import FirefoxOptions
from selenium.webdriver.common.action_chains import ActionChains
from fake_useragent import UserAgent

ua = UserAgent()

一、获取需要提高播放完成率的视频的url连接以及视频的时间长度;

# 对于获取自己所有视频以及所有视频的详细信息(时间长度、播放量等等);
# 这一部分在之前的一个博客已经有了详细的讲解,这里就不再啰嗦了

# 获取到的视频信息如下:(一个二维的数组,每一个元素包含了一个视频的url链接和视频的长度)
urls = [['https://www.bilibili.com/video/BV1Si4y1b7vx', 163], ['https://www.bilibili.com/video/BV1hp4y117cF', 108], ['https://www.bilibili.com/video/BV1QA411v7Zg', 221]]

二、打开浏览器

driver = webdriver.Firefox()
# 逐个打开视频
for url in urls:
    driver.get(url[0])

三、直接打开视频,点击播放视频

# 点击视频播放
def click(driver1):      # 对后续打开的页面进行点击播放
    start_time = time.time()
    time.sleep(8)
    try:
        driver1.find_element_by_xpath('//*[@id="bilibiliPlayer"]/div[1]/div[1]/div/video').click()
        print('点击播放视频 success')
    except:
        try:
            time.sleep(2)
            driver1.find_element_by_xpath('//*[@id="bilibiliPlayer"]/div[1]/div[1]/div/video').click()
            print('等待之后点击播放视频 success')
        except:
            driver1.close()
    finally:
        print("用时:",time.time()-start_time)

四、设置视频播放时间(视频长度的一半)

def play(driver1):
    try:
        speed = driver1.find_element_by_xpath('//button[@class="bilibili-player-video-btn-speed-name"]')
        # 悬停在倍速的按钮上 点击二倍速播放
        ActionChains(driver1).move_to_element(speed).perform()
        time.sleep(0.5)
        driver1.find_element_by_xpath('//ul/li[@data-value="2"]').click()
        print("点击二倍速播放成功")
    except:
        print("点击二倍速播放失败")

只要重复调用函数就可以把所有的视频进行刷个完整的播放,这样子就可以慢慢地提高视频的完成率。

但这个程序还是存在一定的缺陷,一、当前只是一个一个视频在刷,这样子效率低下(因为本人电脑网速跟不上,所以没有提升为两个视频或者三个视频一起播放,如果个人网速可以的话,可以自行提升);二、这个程序最好还是结合代理IP进行刷,这样子不但能够提升播放完成率还能够提升播放量一举两得。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115124.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Latex中插图总结(一)

    Latex中插图总结(一)写在前面的话CSDN中的数据库保存是不是有问题,我之前写了很多的,存在草稿箱里的最后竟然没有在了。真是郁闷死个人。亏我写了这么多,以后写完要保存了。泪目。Latex的插图在Latex中使用插图一般有两种方式,一种是插入事先准备好的图片,另一种是使用Latex代码直接在文档中画图。我们一般常见的使用都是第一种,准备好图片,然后直接插入在我们文档当中。只有一些特殊情况需要用大量代码作图。插图功能不是有L

    2022年6月10日
    44
  • API Testing 11 – SOAP和REST API区别

    API Testing 11 – SOAP和REST API区别设计一个Webservice或API依靠下面两个通用的实现:SOAP–SimpleObjectAccessProtocolREST–RepresentationalStateTransferProtocol采用哪种实现方式创建一个Webservice或API,取决于项目或系统的需求。我们来探讨一下SOAP和REST的区别。当下RESTWebservice比较抢手。SOAP和REST的基本区别如下:SOAP是协议,REST是架构风格SOAPWebServices

    2022年7月14日
    37
  • MySQL锁详解

    MySQL锁详解根据加锁的范围,MySQL里面的锁大致可以分成全局锁、表级锁和行锁三类一、全局锁全局锁就是对整个数据库实例加锁。MySQL提供了一个加全局读锁的方法,命令是Flushtableswithreadlock。当需要让整个库处于只读状态的时候,可以使用这个命令,之后其他线程的以下语句会被阻塞:数据更新语句(数据的增删改)、数据定义语句(包括建表、修改表结构等)和更新类事务的提交语句全局锁的…

    2022年4月30日
    46
  • OpenCV图像几何变换专题(缩放、翻转、仿射变换及透视)【python-Open_CV系列(五)】

    OpenCV图像几何变换专题(缩放、翻转、仿射变换及透视)【python-Open_CV系列(五)】OpenCV图像几何变换(python为工具)Open_CV系列(五)准备图片1.缩放cv2.resize()方法2.翻转cv2.flip()方法3.仿射变换warpAffine()方法3.1平移3.2旋转3.3倾斜4.透视

    2025年6月3日
    3
  • emWin专题——emWin简介及模拟器的使用「建议收藏」

    emWin专题——emWin简介及模拟器的使用「建议收藏」一、emWin简介1、emWin和ucGUI的关系记得刚上大学的时候接触到单片机领域的一个图形界面叫ucGUI,也是跑在STM32上的,后来过了没多久网上查资料发现大家都是用的emWIn了,了解了一下它们之间的关系,其实是同一个东西。emWIn是在ucGUI的基础上发展起来的,两者同属一家公司(SEEGER)开发,没错就是咱买的JLINK调试器的那家公司,以前旧版本的ucGUI是开源的,后…

    2022年10月14日
    3
  • Go适合做什么?为何这么多人偏爱Go语言?

    Go作为Google2009年推出的语言,其被设计成一门应用于搭载Web服务器,存储集群或类似用途的巨型中央服务器的系统编程语言。对于高性能分布式系统领域而言,Go语言无疑比大多数其它语言有着更高的开发效率。它提供了海量并行的支持,这对于游戏服务端的开发而言是再好不过了。到现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。哪些大公司在使用Go语言:1、Goog…

    2022年4月6日
    75

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号