乾貨|Python大佬手把手帶你破解嗶哩嗶哩網滑動驗證(上篇)

/1 前言/

  有爬蟲經驗的各位小夥伴都知道,正常我們需要登錄才能獲取信息的網站,是比較難爬的。原因就是在於,現在各大網站爲了反爬,與爬蟲機制鬥智鬥勇,一般的都加入了圖片驗證碼、滑動驗證碼之類的干擾,讓我們的爬蟲半途折返。

webp

  本篇文章主要是針對嗶哩嗶哩的滑動驗證碼進行講解和破解。

/2 方法探討/

  寫這個文章之前,我就在想一個問題,關於破解滑動驗證究竟是使用機器學習還是第三方服務的方法會比較好一些。關於這個問題,先說一下個人觀點:本人作爲一個爬蟲老鳥,如果只是爲了使用,非常建議使用第三方服務。主要原因有以下兩點。

1、現在是2020年了,在IT行業的小夥伴們都知道一個事實,現在大紅大紫的熱門行業肯定都說是機器學習,大家都想入門機器學習。但是很多人還沒入門就GG了,這是爲什麼呢?因爲入門機器學習,是需要有高等數學底子的,可不是以前學一個語言,會常用邏輯就可以入門了的。這也是爲什麼到現在爲止,依然還有非常大的機器學習人才缺口。

2、機器學習,一般玩不起。首先,你需要有大量的數據,然後再有一個不錯的主機用於訓練,再然後,就是需要你有高等數學的底子。如果這三個你的具備,並且學習了機器學習,你纔可以勉強破解滑動驗證碼,並且還不敢保證自己訓練的準確度。

webp

以上就是我推薦使用第三方接口的原因,因爲第三方接口就是專門做這類機器學習的。它們有強大的人力物力專門做破解各種驗證碼,並且識別率非常高,現在一般都是90%以上。此外,不僅價格還香,還可以讓自己少掉很多根頭髮,何樂而不爲了呢?

話說回來,並不是說我不建議學習機器學習。畢竟現在我們是處於一個人工智能時代,如果你已有不錯的數學基礎,並且對機器學習饒有興趣,在工作或者學習之餘,可以學習一下機器學習的,畢竟趨勢如此,緊跟潮流。

簡單總結一下:如果你的爬蟲遇到了滑動驗證碼,建議直接使用第三方平臺。如果你對機器學習很有興趣,想嘗試一下新方法,可以考慮一下機器學習。

/3 所需工具/

  本文中使用的工具和之前不太一樣,這次暫時沒有用到selenium,而是使用了第三方服務:https://2captcha.com/。根據本人測試,這個平臺是目前識別率最高的平臺,價格也還行,3美元幾百次的樣子。接下來,我詳細講解一下這個打碼平臺。

  本文中使用的工具和之前不太一樣,這次暫時沒有用到selenium,而是使用了第三方服務:https://2captcha.com/,這裏我們只需要 requests 模塊就可以啦!

/4 打碼平臺參數分析/

  根據本人測試,這個平臺是目前識別率最高的平臺,價格也還行,3美元幾百次的樣子。接下來,我詳細講解一下這個打碼平臺。

既然我們選擇了第三方平臺,我們務必要看一下人家的文檔,看看別人是怎麼操作的。下面我們就2captcha平臺的極驗破解,看看官網上是如何實現的。

webp

額...純英文的,我也看不懂。。。這咋回事呢?這咋辦哪?這可咋整啊?別慌,問題不大,小編帶你們一步一步分析主要功能。

1、首先我們需要登錄到賬號,如下圖所示,右上方有個Sign的提示,如果沒有賬號的話,得點擊右上方的Register進行註冊賬號即可。

webp

  2、當登錄完成後,會自動跳到主頁,如下圖所示。

webp


上圖中長方形框框圈起來的地方表示你的賬戶餘額剩餘多少錢,賬戶資金不足的話記得要氪金,否則是不能用滴,氪金過程這裏就不多做解釋了哈,問題不大。橢圓框框圈起來的地方表示的是你的唯一key值,每次請求要帶上這個key的,所以你務必要保管好。

   3、前期工作完成之後,接下來我們進入主題,研究文檔。點擊下圖中紅色圈的地方,API(全稱是:Application Programming Interface,應用程序接口),一般API下面存放的都是文檔。

webp


   4、之後彈出的界面就讓人有些傻眼了,如下圖所示。

webp

   額,尷尬的一批,這全部是英文額,不過不要慌,問題不大,繼續往下滑動看看。

   5、誒,在下方這裏我們可以找到一個列表,如下圖所示。

webp

滑動到Rates這個菜單欄,我們能看到一個列表,我們要解決的就是極驗(GeeTest,就是極驗的英文翻譯),所以我們只需要看GeeTest就好了,可以看到上面顯示的單價是2.99美元。之後我們點擊GeeTest,頁面會進行跳轉。

   6、之後會彈出下圖的英文界面,估計小夥伴們有的望而卻步一波了。

webp

   7、不過仍然不要慌,別忘記了,我們還有翻譯呢!點擊瀏覽器的翻譯功能,頁面突然間就變得熟悉了,如下圖所示。

webp

   這下是不是感覺清晰了很多了?雖然有些翻譯的不盡人意,但是基本上我們能夠明白翻譯過來的意思,順藤摸瓜,可以搞定原英文想要表達的意思。如果你英文好的話,就不用像小編這樣這麼費勁啦,給英文大佬打call!

可以看到上文中的操作提示,我們需要找到目標網站的gt,challenge和api_server三個值,然後,加上其他一些參數發送到網址https://2captcha.com/in.php,之後該網址會返回一個任務ID。

   然後等個15秒左右以後,再向https://2captcha.com/res.php請求,帶上任務ID加上一些其他參數,即可進行破解。

/5 總結/

  寫到這裏,這篇文章已經超過2000個字了,估計小夥伴們都沒有耐心看下去了,小編在這裏大概整理一下上文的大體意思。

  1、首先,我們確定需要第三方平臺去幫助我們破解極驗,之後我們需要找到這個第三方平臺,並且需要進行註冊。

  2、註冊之後,我們需要閱讀API操作文檔。

3、根據API操作文檔,在翻譯的幫助下,找到目標網站的gt,challenge和api_server三個值,然後,加上其他一些參數發送到 https://2captcha.com/in.php,會返回一個任務ID。

4、然後等個15秒左右以後,再像https://2captcha.com/res.php請求,帶上任務ID加上一些其他參數,即可進行破解。

    介於篇幅原因,這篇文章主要介紹了第三方打碼平臺和破解的理論部分,下一篇文章將詳細介紹破解嗶哩嗶哩極驗的具體過程,小夥伴們敬請期待吧!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章