写点什么

『Python 爬虫』Python 实现刷 B 站、爱奇艺等视频网站播放量(Python 教学文章)

用户头像
风骨散人
关注
发布于: 2021 年 03 月 23 日
『Python爬虫』Python实现刷B站、爱奇艺等视频网站播放量(Python教学文章)

很幸运,这篇文章能够被发出来。之所以归类的 Python 爬虫,因为他的访问机制跟爬虫类似。




先上代码,然后再分析:


import requestsfrom selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as ECimport time
while True: chromeOptions = webdriver.ChromeOptions() browser = webdriver.Chrome('C:\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe', options=chromeOptions) #浏览器驱动 browser.delete_all_cookies() # 删除cookie browser.get("https://www.bilibili.com/video/av00000002") #视频地址 element = WebDriverWait(browser, 15).until( #等待播放按钮能够被加载并且能够被点击,15s后如果还没加载完成并且不满足被点击的条件,就抛出异常 EC.element_to_be_clickable((By.XPATH, '//*[@id="bilibiliPlayer"]/div[1]/div[1]/div[8]/video')) ) element.click() print(browser.get_cookies()) time.sleep(100)# 等待时常 browser.quit()
复制代码


代码分析:

1.库的调用

调用了这一堆库,不会安装库的看一看我的这篇博客:python库安装

import requests from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as ECimport time
复制代码

有人会问我,为什么不直接导入一个 selenium 库呢?养成好习惯,不要让你的代码很冗杂,不然打包的时候,把一整个库都会打包。

记住,这个习惯很重要!!!!!


2. 浏览器调试驱动



chromeOptions = webdriver.ChromeOptions() browser = webdriver.Chrome('C:\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe', options=chromeOptions) #浏览器驱动
复制代码

这里要下载浏览器调试的驱动,要跟你的浏览器的版本一样。

网址:

  • Chrom 浏览器的 web driver(chromedriver.exe):点这儿


  • Firefox(火狐浏览器)的 web driver (geckodriver.exe):点这儿



然后放在浏览器根目录下,再把浏览器根目录下的驱动的地址,放到代码里即可。


 browser = webdriver.Chrome('驱动路径', options=chromeOptions) #浏览器驱动
复制代码
3.删除 cookie


browser.delete_all_cookies()  # 删除cookie
复制代码


Cookie 并不是它的原意“甜饼”的意思, 而是一个保存在客户机中的简单的文本文件, 这个文件与特定的 Web 文档关联在一起,

保存了该客户机访问这个 Web 文档时的信息, 当客户机再次访问这个 Web

文档时这些信息可供该文档使用。由于“Cookie”具有可以保存在客户机上的神奇特性, 因此它可以帮助我们实现记录用户个人信息的功能,

而这一切都不必使用复杂的 CGI 等程序 。 举例来说, 一个 Web 站点可能会为每一个访问者产生一个唯一的 ID, 然后以 Cookie

文件的形式保存在每个用户的机器上。如果使用浏览器访问 Web, 会看到所有保存在硬盘上的

Cookie。在这个文件夹里每一个文件都是一个由“名/值”对组成的文本文件,另外还有一个文件保存有所有对应的 Web

站点的信息。在这里的每个 Cookie 文件都是一个简单而又普通的文本文件。透过文件名, 就可以看到是哪个 Web

站点在机器上放置了 Cookie(当然站点信息在文件里也有保存)


为了避免,多次访问,cookie 记录的情况。


4. 视频地址


   browser.get(" 要访问的视频地址") #视频地址
复制代码

直接将要访问的视频地址粘贴,即可。


5. 自动播放


   element = WebDriverWait(browser, 15).until( #等待播放按钮能够被加载并且能够被点击,15s后如果还没加载完成并且不满足被点击的条件,就抛出异常        EC.element_to_be_clickable((By.XPATH, '//*[@id="bilibiliPlayer"]/div[1]/div[1]/div[8]/video'))    )    element.click()
复制代码

第一步:

是设置等待加载时常,是网络环境设置时将长度。

第二步:

获取播放按钮的位置,本文是 B 站的播放位置

其他网站,F12,点击该按钮,再点击播放按钮即可获取,按照代码种形式设置即可。

6.加载成功,输出 cookie

    print(browser.get_cookies())
复制代码

如果加载成功,会给相应的反馈,所以我们为了看到反馈就输出一下 cookie


7.设置每个视频观看时长


    time.sleep(100)# 等待时常
复制代码

这个尽量给不要低于 30 秒,不然刷的太快,可能会被封

8.关闭浏览器


browser.quit()
复制代码


注意: 本文倾向于 Python 的使用教学,不建议真的拿这个去刷访问量,因为那样刷的太少,真的能够短时间提升视频播放量的方法是 IP 池,我不讲,那样一天刷个几万,对 B 站的那些用心的视频作者不太公平,而对于那些平台运营来说,他们的惯用手段推流,你用这个只会增加 PV,不会增加 UV 没有用户粘性。

这时候有人问我了,没用你发个屁呀?

一天 24 小时,一个小时 60 分钟,一分钟增加两个浏览量,一天一个 ip 可以增加 2880 的播放量。比你手动是不是好点。


优质的内容,才会增加粘性用户,靠着软件刷出的播放量,永远是昙花一现,奉劝脚踏实地的一步一步成为优质视频作者。

<br>

<br>


<br>


写在最后:

Name:风骨散人,目前是一名双非在校大学生,预计考研,热爱编程,热爱技术,喜欢分享,知识无界,希望我的分享可以帮到你!名字的含义:我想有一天我能有能力随心所欲不逾矩,不总是向生活低头,有能力让家人拥有富足的生活而不是为了生计而到处奔波。“世人慌慌张张,不过是图碎银几两。偏偏这碎银几两,能解世间惆怅,可让父母安康,可护幼子成长 ...”

文章主要内容:

Python,C++,C 语言,JAVA,C#等语言的教程

ACM 题解、模板、算法等,主要是数据结构,数学和图论

设计模式,数据库,计算机网络,操作系统,计算机组成原理

Python 爬虫、深度学习、机器学习

计算机系 408 考研的所有专业课内容

目前还在更新中,先关注不迷路。微信公众号,cnblogs(博客园),CSDN 同名“风骨散人”


如果有什么想看的,可以私信我,如果在能力范围内,我会发布相应的博文!

>感谢大家的阅读!😘你的点赞、收藏、关注是对我最大的鼓励!


发布于: 2021 年 03 月 23 日阅读数: 27
用户头像

风骨散人

关注

还未添加个人签名 2021.03.22 加入

大学僧,ACM退役选手。 名字的含义:希望可以通过努力,能力让家人拥有富足的生活而不是为了生计而到处奔波。“世人慌慌张张,不过是图碎银几两。偏偏这碎银几两,能解世间惆怅,可让父母安康,可护幼子成长 …”

评论

发布
暂无评论
『Python爬虫』Python实现刷B站、爱奇艺等视频网站播放量(Python教学文章)