1. 程式人生 > 實用技巧 >(硬貨)Python爬蟲偷懶神器 — 快速構造請求頭,屬於程式設計師的快樂

(硬貨)Python爬蟲偷懶神器 — 快速構造請求頭,屬於程式設計師的快樂

本文的文字及圖片來源於網路,僅供學習、交流使用,不具有任何商業用途,版權歸原作者所有,如有問題請及時聯絡我們以作處理

以下文章來源於騰訊雲 作者:Python程式設計與實戰

( 想要學習Python?Python學習交流群:1039649593,滿足你的需求,資料都已經上傳群檔案流,可以自行下載!還有海量最新2020python學習資料。 )

我們在寫爬蟲構建請求的時候,不可避免地要新增請求頭( headers ),一般來說,我們只要新增 user-agent 就能滿足絕大部分需求了

但這並不是絕對的,有些請求單單新增一個 user-agent 是不能獲取到資料的,在不知道是缺少哪個請求頭引數的情況下,我一般會先把所有引數全部新增上,然後再逐個排除。

如果是後面這種情況,相信大家都會有這種感覺:手動將瀏覽器中請求頭複製貼上然後構造成字典裡的每一個 鍵值對 簡直太TM太費時間了

所以,本文將介紹幾個快速構造請求頭的方法,供君選擇:

正則一鍵替換

正則替換指的是利用 Pycharm 的 ctrl+R 替換功能,下面帶大家一步一步來演示該操作,我們將瀏覽器的請求頭複製到 Pycharm 中,如下面所示

然後按住 crtl+R,會出現上下兩個輸入框,然後勾選 Regx 以及 In selection 這兩個選項

在上面框填入要匹配內容的正則表示式:

(.*?): (.*)
  • 1

第二個填入匹配組後的格式

"$1": "$2",
  • 1

其中 "$$1 ", “$2” 分別表示匹配組,即匹配成功的原文

填完之後,選中我們剛複製的內容,點選 Replace all 按鈕即可

最後在外層加上 headers = {} 就完成我們要構造的格式了

Pycharm 快捷鍵

這裡再介紹一種利用 Pycharm 快捷鍵替換方法,常用的快捷鍵還是要記住,對平常快速程式碼幫助很大 。

第一步
還是以上面複製的請求頭為例,按住 Alt 鍵,同時滑鼠定位字典鍵名結束位置,如下所示,注意看鍵名旁邊都有一個滑鼠指標

第二步
輸入引號,然後指標再前進兩步,在字典值前面輸入引號。

第三步
再按下 End 鍵,在最末尾輸入引號及逗號。

最後按下 Home 鍵,在最前面輸入引號,即大功告成!

和正則替換法一樣,在最外層輸入 headers = {} 即完成

postman

在瀏覽器中 Copy as cURL(bash) 我們要構造的請求,如下圖所示

copy

然後開啟 postman,選擇左上角的 New 旁邊的 Import 按鈕 ,貼上我們剛 copy 的內容


點選 Import, 就回到了發現請求的介面,選擇傳送按鈕下方的 code 鍵,

如上圖, headers 已生成,不僅支援 Python 還支援其他語言,強大?

網站一鍵替換

有不少網站都有這個構造功能,但是該網站是我用過的最好用的最強大的

除了能構造請求頭,還能單獨構造 cookies 同時自動幫我們生成請求的程式碼。你甚至你不用自己手寫程式碼

同樣的在瀏覽器中 Copy as cURL(bash) 我們要構造的請求,開啟網站 https://curl.trillworks.com/

貼上到左邊框後即自動生成,快得很…


還有多種語言供你選擇。

上面便是我介紹的幾種方法,是不是很方便,不用再一個一個手動輸入了。當然除了上面的方法之外,你也可以自己動手用程式碼生成,因為都是有一定規律的