nodejs模組和簡單爬蟲

2021-10-10 04:41:35 字數 2065 閱讀 4346

引入

const fs = require('fs') // **直接寫模組名即可**

使用 fs.readfile(xx,xx)

npm i body-parser -s

引入const bodyparser = require('body-parser') // 直接寫模組名

使用 bodyparser.json()

nodejs模組

1,如果乙個檔案.js 沒有向外提供介面

那麼整個檔案就是乙個模組,可以直接引入這個檔案(相當於將這個檔案的**直接copy進來)

注意:模組化 每個模組是有自己單獨的作用域(多個模組中的變數名可以一樣)

2,模組化 介面

1) 乙個檔案 向外提供多個介面

exports.a = 值

exports.b = 值

exports.x = 值

值可以是任意資料型別

引入 (全部引入 obj是乙個物件)

const obj = require('./a.js')

或者 引入特定介面

const = require('./a.js')

注意:自定義的介面 即使和 引入 檔案在同一目錄下,也不要直接寫目錄名

node中require機制(如果直接寫目錄名,node會先去自己的模組中查詢,再去node_modules中外掛程式如果都沒有 會直接報錯)

2)乙個檔案 預設提供介面(只能提供乙個)

module.exports = 值

注意:這個檔案只能匯出乙個介面

注意:當乙個檔案**現了

module.exports 和 exports 以module.exports為準

建議使用module.exports

非同步

讀檔案const fs = fs.readfile(path[,options],callback)

callback:

errdata

寫fs.writefile(path,data[,options],callback)

callback

err追加callback

err刪除

fs.unlink(path,callback)

path.join([...path])

// 方法 可以有多個引數,或者沒有引數

// 將 方法的 引數 拼接成 路徑片段

path.resolve([...path])

// 解析 路徑引數 解析成 絕對路徑

注意: /寫在路徑前面代表 根目錄

有伺服器(軟體):

/根目錄就是伺服器監聽目錄

沒有伺服器:

當前檔案所在 的盤

__dirname

當前檔案所在目錄的絕對路徑

path.join(__dirname,'../fs')

__filename

當前檔案所在的絕對路徑

元件

協議名主機

埠path

search (包含query k=v&k2=v2)

/* 分析 rawdata中

img標籤

src拿出來

$("img").each((i,el)=>)

*/

});

}).on(『error』, (e) => );

})

nodejs簡易爬蟲

我的爬蟲程式是用nodejs寫的,因為最近在學這個東西,其中使用了express框架,以及cheerio和superagent兩個模組。cheerio模組是nodejs處理html內容的神器,例如var cheerio.load html 將頁面的html內容載入下來後,便可使用jquery語法進行...

網路爬蟲 Nodejs

要抓取網頁資訊首先要獲取部落格主頁的html資訊,使用 http.get options callback 方法獲取資訊,如下 其中url 為我的 部落格主頁,獲取主頁html後,需要對資訊進行挑選,在部落格主頁右鍵選擇檢視原始碼,可以找到所需資訊如下 newcomments class panel...

nodejs 簡易爬蟲

用nodejs編寫爬蟲跟其他語言一樣,比較簡單,比較各個語言標準庫都差不多,主要就是抓取頁面,然後分析dom節點,獲取資料。requests 經典的請求庫,cherrio 像jquery一樣解析dom的庫。這裡用csdn舉例。var request require request var promi...