听说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进行刷,这样子不但能够提升播放完成率还能够提升播放量一举两得。

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 手把手教你实现一个微信自动回复机器人「建议收藏」

    手把手教你实现一个微信自动回复机器人「建议收藏」RebateBot返利机器人项目地址项目描述关键词:返利微信阿里妈妈机器人跨平台返利机器人,基于微信建立机器人通道与用户通过聊天快速生成返利链接利用闲置微信和极小的电脑性能开启24小时无人轮值返利机器人购物只需要发送链接给机器人,机器人能马上给你回复优惠价格及链接功能实现微信机器人这个模块在这里可以看到最新的代码微信机器人[x]消息回调[x]自动回…

  • FormatDateTime的用法

     FormatDateTime的用法声明:function FormatDateTime(const Format: string; DateTime: TDateTime): string; overload;当然和Format一样还有一种,但这里只介绍常用的第一种Format参数是一个格式化字符串。DateTime是时间类型。返回值是一种格式化后的字符串重点来看Format参数中的指令字符

  • 触摸事件 touchstart、touchmove、touchend

    触摸事件 touchstart、touchmove、touchend目录触摸事件触摸事件编码触摸手指个数分析触摸目标DOM元素分析触摸位置分析触摸事件HTML5中,PC端基于鼠标的界面互动主要是单击,移动端界面交互方式主要是触摸。移动端浏览器触摸事件事件名称 描述 是否包含touches数组 touchstart 触摸开始,多点触控,后面的手指同样会触发 是 touchmove …

  • springboot—@Async实现异步调用及异步回调Future「建议收藏」

    springboot—@Async实现异步调用及异步回调Future「建议收藏」异步调用相对的是同步调用。同步方法调用的时候必须是按照顺序执行的,上一行代码执行完,才会执行下一行。而异步方法调用是相当于多个线程执行,不需要等待上一行代码的执行结果。首先测试方法同步的情况:controller:packagespringboot_async.async_test;importorg.springframework.beans.factory.annot…

  • std future get_waitkey(0)

    std future get_waitkey(0)一、关于std::future成员函数wait_for():1.1关于std::future_status:std::future_status是一个枚举类型,其值有三://ENUMfuture_statusenumclassfuture_status{//namesfortimedwaitfunctionreturnsready,timeout,deferred//延迟执行,当std::async()第一个参数为std::lanuch::de

发表回复

您的电子邮箱地址不会被公开。

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