1. 程式人生 > >此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

通過用JS在本地生成隨機字串的反爬蟲機制,在利用Python寫爬蟲的時候經常會遇到的一個問題。希望通過講解,能為大家提供一種思路。以後再碰到這種問題的時候知道該如何解決。(如果缺乏學習資料的同學,文末已經給你提供!)

破解有道翻譯反爬蟲機制

web端的有道翻譯,在之前是直接可以爬的。也就是說只要獲取到了他的介面,你就可以肆無忌憚的使用他的介面進行翻譯而不需要支付任何費用。那麼自從有道翻譯推出他的API服務的時候,就對這個介面做一個反爬蟲機制。這個反爬蟲機制在爬蟲領域算是一個非常經典的技術手段。那麼他的反爬蟲機制原理是什麼?如何破解?接下來帶大家一探究竟。

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

一、正常的爬蟲流程:

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

進群:548377875   即可獲取數十套PDF以及大量的學習教程哦!

在上圖,我們可以看到傳送了很多的網路請求,這裡我們點選第一個網路請求進行檢視:

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

對其中幾個比較重要的資料進行解釋:

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

其他的資料型別暫時就不怎麼重要了,都是固定寫法,我們後面寫程式碼的時候直接鞋子就可以了。到現在為止,我們就可以寫一個簡單的爬蟲,去呼叫有道翻譯的介面了。這裡我們使用的網路請求庫是Python3自帶的urllib,相關程式碼如下:

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

二、破解反爬蟲機制:

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

然後把格式化後的程式碼,複製下來,用sublime或者pycharm開啟都可以,然後搜尋salt,可以找到相關的程式碼:

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!

 

知道salt和sign的生成原理後,我們就可以寫Python程式碼,來對接他的介面了,以下是相關程式碼:

此Python破解反爬蟲例項,曾幫助過我成長,你也會對它表示感謝!