個人分享|我的常規(guī)爬蟲流程-創(chuàng)新互聯(lián)

個人分享 | 我的常規(guī)爬蟲流程

創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計制作、網(wǎng)站設(shè)計、澄江網(wǎng)絡(luò)推廣、小程序設(shè)計、澄江網(wǎng)絡(luò)營銷、澄江企業(yè)策劃、澄江品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們大的嘉獎;創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供澄江建站搭建服務(wù),24小時服務(wù)熱線:18982081108,官方網(wǎng)址:muchs.cn

閱讀文本大概需要 3.6 分鐘。

其實,我鼓搗的有些也算不上是爬蟲。

首先,爬蟲不是我的本職工作,我爬蟲一般是為了一些有意思的東西,獲取一些信息,或者是實現(xiàn)一些可以自動化完成的任務(wù),比如簽到。

一般我的爬蟲流程是這樣的:

1、瀏覽器訪問待爬網(wǎng)頁,并提前打開開發(fā)者工具(F12),選中 Nework 選項卡,這樣就可以看到網(wǎng)絡(luò)交互信息;

或者,右鍵查看網(wǎng)頁源代碼,查找目標信息。

2、在網(wǎng)絡(luò)交互信息流中篩選出自己需要的,然后在 postman 中模擬請求,看是否仍然可以獲取到想要的信息;

postman 除了可以進行請求測試外,還有一個優(yōu)勢就是,代碼可以直接生成,這樣就可以方便得進行最終的整合了。

3、數(shù)據(jù)解析,從請求的響應(yīng)中解析出我們的目標數(shù)據(jù),至于得到數(shù)據(jù)后如何處理,那就是你的事情了。

下面就以大家耳熟能詳(landajie)的豆瓣電影 TOP250 為例。

實例分析

請求梳理

首先,我們要訪問待爬取的網(wǎng)頁:https://movie.douban.com/top250。

一般情況下,我都是直接按下 F12 調(diào)出 DevTools,點擊 Network 選項卡:

有時請求已經(jīng)加載完成了,可以把數(shù)據(jù)全部 clear 掉,然后重新刷新網(wǎng)頁,這時候請求流會重新加載。

這里有幾個點需要注意,主要是下圖圈紅的幾個:

1、有些網(wǎng)頁請求會有自動跳轉(zhuǎn),這是請求流會重新加載,這是勾選了 Preserve log 的話,數(shù)據(jù)就會持續(xù)打印,不會被沖掉;

2、勾選 Disable cache 可以禁用緩存;

3、請求流的篩選:XHR 是 XMLHttpRequest 的意思,大多數(shù)情況下只要點擊 XHR 就行了,但是若此時發(fā)現(xiàn)沒有想要的請求數(shù)據(jù),那么就要點擊 All 展示所有請求流。

比如豆瓣的這個,XHR 中是沒有我們的目標請求的。

請求模擬

通過上面的步驟,我們能夠確定通過哪些請求能夠得到我們的目標數(shù)據(jù),然后把這些請求放到 postman 中進行模擬。

比如,我們在 postman 中訪問豆瓣的網(wǎng)站:

這里的請求比較簡單,直接 get url 就能獲取到目標數(shù)據(jù)。

其實大部分情況下,都是需要添加一些訪問參數(shù)的,這是我們可以在 Headers 里添加。

另外,postman 還支持其他請求,如 post、delete 等等:

  • 生成代碼

點擊右側(cè)的 code 按鈕,就可以獲取到對應(yīng)的代碼:

支持生成多種語言的代碼:

比如,我們這里選擇 Python Requests,就可以得到如下代碼:

import requests

url = "https://movie.douban.com/top250"

headers = {
    'cache-control': "no-cache",
    'postman-token': "d2e1def2-7a3c-7bcc-50d0-eb6baf18560c"
    }

response = requests.request("GET", url, headers=headers)

print(response.text)

這樣我們只要把這些代碼合并到我們的業(yè)務(wù)邏輯里就行了,當(dāng)然其中的 postman 相關(guān)的參數(shù)是不需要的。

數(shù)據(jù)解析

下面要做的就是從響應(yīng)中解析目標數(shù)據(jù)。

有些響應(yīng)是返回 HTML,有些是返回 json 數(shù)據(jù),有的還是返回 XML,當(dāng)然也有其他的,這就需要不同的解析邏輯。

具體如何解析,這里我們不再贅述,之前的爬蟲文章中都有涉及,有興趣的可以翻一翻。

總結(jié)

本來打算寫 postman 的使用的,但是寫來寫去,成了我的一般爬蟲流程梳理。

本文涉及的爬蟲都是比較初級的,至于 ip 代理、驗證碼解析等高端功能,后面有時間再單獨說。

不知道你的一般流程是什么樣的,不妨留言分享下

原文鏈接:https://mp.weixin.qq.com/s/FgoEdLlAxYVgWD56X06hRA

文章名稱:個人分享|我的常規(guī)爬蟲流程-創(chuàng)新互聯(lián)
地址分享:http://muchs.cn/article38/deiipp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、面包屑導(dǎo)航、定制網(wǎng)站、響應(yīng)式網(wǎng)站、App開發(fā)、靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營