Python爬蟲進階必備 | 關於 ReRes 的一篇教程

點擊上方「鹹魚學Python」,選擇「加爲星標html

第一時間關注Python技術乾貨!python

先來說講爲何要用到 ReRes ?jquery

在爬蟲開發的過程當中,想要修改網站的 JS 來規避網站的無限 Debugger ,或者想給線上的 JS 加點調試的語句,咱們就須要把遠程的 JS 映射到本地的文件上,這樣就能夠經過修改本地的文件進行線上的調試。git

一般面對這樣的需求,咱們能夠經過一些工具完成:github

  • Windows 下可使用 Fiddler  ,Mac 下可使用 Charles
  • Chrome 開發工具自帶的 Override
  •  ReRes 和 Resource Override 插件
  • Whistle - 跨平臺 web 調試代理工具

我的常常使用的是 Chrome 開發工具自帶的 Override 以及 ReRes 插件。web

本篇主要介紹關於 ReRes 插件的使用。正則表達式

有條件的直接使用谷歌商店安裝:https://chrome.google.com/webstore/detail/reres/gieocpkbblidnocefjakldecahgeeica?hl=zh-CN&gl=CNchrome

或者在後臺回覆「reres」獲取離線版本。小程序

下載好離線版本以後打開chrome://extensions/拖入便可安裝微信

安裝好後,在chrome://extensions/找到 ReRes ,勾選容許訪問文件網址,至此完成 ReRes 的配置。

ReRes 到底怎麼用?

這個插件的優勢就是簡潔,簡潔到不找找相關的資料都不知道怎麼用。

剛剛安裝好的軟件,打開是這個樣的:

ReRes初始界面

點擊添加規則是這個樣子的:

添加規則

無從下手形容是再正確不過了,不過 ReRes 使用方法也很簡單。

點開添加規則以後:

  • If URL match欄,填入的是匹配 URL 的規則,這裏填入的是一個正則表達式,好比我想配置 github.com/login這個域名,可使用 *://github.com/login*這樣的方式匹配,或者使用偷懶的方式直接匹配網站路徑下的文件 ^https://www.xxxAAA.cn/js/jquery.min.js
  • If URL match注意事項:不要填開頭的 /和結束的 /x,如 /.*/g請寫成 .*
  • Response欄,填寫的是映射的響應地址,好比在 Window 下,我想要將 E 盤下的 index.js 文件映射回去,使用本地地址的方式是 file:///E:/index.js,使用線上地址的方式是 http://localhost:3000/xxx/index.js
  • Response注意事項:線上地址以http://開頭,本地地址以 file:///開頭,Mac 推薦使用 超級右鍵能夠直接複製文件路徑,同時上一點中提到的線上地址須要啓動一個能夠訪問靜態文件的服務,可使用 Flask 快速搭建一個。

添加完成,點擊保存,從新加載頁面便可。

快速練手

光說不練確定不是鹹魚的風格,這裏快速用一個例子演示一下。

打開夜幕的 JS 逆向的課程練習網站,打開第九題使用符號加密的JS練習題。

咱們能夠看到網站的index.js這個文件是混淆後的代碼。

爲了方便調試,咱們使用ReRes將解密後的明文替換掉這個混淆的文件。

右鍵須要替換的文件,使用copy link address

粘貼到 Reres 的If URL match欄中。

以後複製須要映射的本地文件的路徑,粘貼至Response欄,點擊保存便可。

從新刷新網頁,便可加載,爲了測試是否加載成功,能夠寫個彈窗測試下。

到這裏就完成了遠端代碼映射到本地的操做。

不過這裏仍是須要另外思考一個問題:

若是須要映射的網站使用的是 Https 的協議,這個時候應該如何完成遠端文件的映射呢?

最後

在以前鹹魚爭取到一個福利,和北京大學出版社的編輯朋友合做的留言贈書活動已經試行幾期。

不過好像你們對於留言不是很感冒,因此經過和出版社溝通爭取。

以前的留言參與贈書的形式變動爲小程序抽獎,你們只要掃描抽獎的小程序碼便可參與。(發文三天後開獎)

感謝金主~

Love & Share 

[ 完 ]


朕已閱 

本文分享自微信公衆號 - 鹹魚學Python(xianyuxuepython)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索