『Python爬蟲』Python實現刷B站、愛奇藝等視頻網站播放量(Python教學文章)

很幸運,這篇文章可以被髮出來。之因此歸類的Python爬蟲,由於他的訪問機制跟爬蟲相似。java

在這裏插入圖片描述

先上代碼,而後再分析:

import requests
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import 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()

代碼分析:python

1.庫的調用

調用了這一堆庫,不會安裝庫的看一看個人這篇博客:python庫安裝git

import requests 
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time

有人會問我,爲何不直接導入一個selenium庫呢?養成好習慣,不要讓你的代碼很冗雜,否則打包的時候,把一整個庫都會打包。
記住,這個習慣很重要!!!!!github

2. 瀏覽器調試驅動
chromeOptions = webdriver.ChromeOptions()
     
    browser = webdriver.Chrome('C:\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe', options=chromeOptions) #瀏覽器驅動

這裏要下載瀏覽器調試的驅動,要跟你的瀏覽器的版本同樣。
網址:web

  • Chrom瀏覽器的web driver(chromedriver.exe):點這兒算法

  • Firefox(火狐瀏覽器)的web driver (geckodriver.exe):點這兒chrome

  • Microsoft Edge :戳這裏數據庫

  • Apple Safari : Click itnpm

而後放在瀏覽器根目錄下,再把瀏覽器根目錄下的驅動的地址,放到代碼裏便可。編程

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的播放量。比你手動是否是好點。

優質的內容,纔會增長粘性用戶,靠着軟件刷出的播放量,永遠是曇花一現,奉勸腳踏實地的一步一步成爲優質視頻做者。




寫在最後:
Name:風骨散人,目前是一名雙非在校大學生,預計考研,熱愛編程,熱愛技術,喜歡分享,知識無界,但願個人分享能夠幫到你!名字的含義:我想有一天我能有能力爲所欲爲不逾矩,不老是向生活低頭,有能力讓家人擁有富足的生活而不是爲了生計而處處奔波。「世人慌慌張張,不過是圖碎銀幾兩。恰恰這碎銀幾兩,能解世間惆悵,可以讓父母安康,可護幼子成長 …」
文章主要內容:
Python,C++,C語言,JAVA,C#等語言的教程
ACM題解、模板、算法等,主要是數據結構,數學和圖論
設計模式,數據庫,計算機網絡,操做系統,計算機組成原理
Python爬蟲、深度學習、機器學習
計算機系408考研的全部專業課內容
目前還在更新中,先關注不迷路。微信公衆號,cnblogs(博客園),CSDN同名「風骨散人」

若是有什麼想看的,能夠私信我,若是在能力範圍內,我會發布相應的博文! 感謝你們的閱讀!😘你的點贊、收藏、關注是對我最大的鼓勵!