很幸運,這篇文章能夠被發出來,之所以歸類的Python爬蟲,因為他的訪問機制跟爬蟲類似,
?
很多人學習python,不知道從何學起,
很多人學習python,掌握了基本語法過后,不知道在哪里尋找案例上手,
很多已經做案例的人,卻不知道如何去學習更加高深的知識,
那么針對這三類人,我給大家提供一個好的學習平臺,免費領取視頻教程,電子書籍,以及課程的源代碼!??¤
QQ群:623406465
先上代碼,然后再分析:
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()
代碼分析:
1.庫的呼叫
呼叫了這一堆庫,不會安裝庫的看一看我的這篇博客:python庫安裝
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庫呢?養成好習慣,不要讓你的代碼很冗雜,不然打包的時候,把一整個庫都會打包,
記住,這個習慣很重要!!!!!
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):點這兒
- Microsoft Edge :戳這里
- Apple Safari : Click it
然后放在瀏覽器根目錄下,再把瀏覽器根目錄下的驅動的地址,放到代碼里即可,
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的播放量,比你手動是不是好點,
優質的內容,才會增加粘性用戶,靠著軟體刷出的播放量,永遠是曇花一現,奉勸腳踏實地的一步一步成為優質視頻作者,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/174406.html
標籤:其他
