使用nodejs爬取靜態網頁資料

2022-08-27 02:30:14 字數 1787 閱讀 9083

嘗試來做乙個爬蟲的教程, 很大概率是乙個系列教程, 分為靜態頁面, 動態頁面, 無頭瀏覽器 三個方向開始

主要是分享一下, 也算是自己記乙個筆記吧, 我們來找乙個靜態的** 找個比較有意義的:爬取濟南的boos直聘列表資訊

首先宣告的是boos直聘擁有一部分的反扒, 高頻次的訪問會要求輸入驗證碼, 這次教程不會寫, 之後的打算也不會寫, 需要的話自己去了解.

本文章僅限於交流學習使用, 不允許運用於違法違規等地方, 本人不承擔一切後果

畢竟爬蟲是違法的

你可以在任何地方建立乙個js檔案(你擁有最高許可權的話)

並沒有任何想發布或者封裝為包的想法,將不進行npm init

嘗試命名為main.js的檔案 比如在桌面

然後開啟命令列,小黑框。linux下可以使用ctrl+alt+t,windows下使用徽標+r 然後輸入cmd,mac沒用過,不知道

你會獲得乙個這東西

然後開啟桌面

linux中文環境可以直接cd 桌面 如果不行可以cd desktop

windows 下cd desktop

然後回車。

我們需要乙個包,叫做cheerio

使用npm安裝

npm install cheerio或yarnyarn add cheerio

然後需要網路請求的包axios安裝同上

安裝完成之後 開啟建立的main.js

然後引入這兩個包

const axios = require('axios')

const cheerio = require('cheerio')

通過axios訪問上面的**

axios.get('').then((res)=>)
使用cmd 執行node ./main.js然後就會輸出頁面資訊了

然後接下來就是使用cheerio了 接上面**的

let dom = cheerio.load(res.data);console.log(dom('title').text())

cheerio.load 載入一段html 解析成乙個結構,你現在可以理解為這樣 接下來就可以跟使用jquery一樣了

如果你不明白 你可以這樣

let $ = cheerio.load(res.data);console.log($('title').text())

這樣就可以很好理解了。

然後 你會發現 輸出資訊會是載入中。

那麼接下來 你需要傳乙個cookie上去

完整**如下

const axios = require('axios')

const cheerio = require('cheerio')

axios.get('',}).then((res)=>)

const axios = require('axios')

const cheerio = require('cheerio')

axios.get('',}).then((res)=>)

})

nodeJs爬取網頁資料

發現node可以爬蟲,正好我在找暑期實習,然後就使用node爬一下 資料找實習。爬取目標 載入http模組 目標 嘿嘿,這個 有很多實習職位 http的get請求乙個目標 函式的引數是response,繫結兩個事件,乙個 data 事件,會不斷觸發獲取資料,資料獲取完觸發 end 事件。爬到的的資料...

java網頁資料爬取

在瀏覽器書籤中有許多經典的東西,有時候什麼忘記了需要去查詢的,也非常方便,但是痛苦的事情是某一天開啟書籤,居然那個頁面不知道飛哪去了,打不開,作為乙個程式設計師,當然不能容忍這種事情發生,那就把它們都爬下來。首先我們的書籤可能有幾種分類,為了處理方便,可以手動刪除我們不需要的,也可以程式處理一下 以...

python爬取網頁資料

import refrom urllib.request import urlopen 爬取網頁資料資訊 def getpage url response urlopen url return response.read decode utf 8 defparsepage s ret re.find...