nodeJs初学--Nodejs中的《爬虫》基础

1、利用nodeJs中的 http 或者 https 模块利用爬虫 扒一个网站。(请求网站 将网站数据保存到本地)

const  http = require('http')   或者const  http = require('https')     根据情况使用https或者

http

let url = 'https://www.xxxxx.com'

const fs = require('fs');

http.get( url , (res) => {

    let rawData = '';

    const{statusCode}=res; //判断状态  es6解构赋值 res 对象中含有statusCode参数。

    const  contentType=res.headers['content-type'];   // 获取类型

    let err = null;

    if(statusCode!==200){

            error=newError('请求状态失败');}

else  if(!/^application\/json/.test(contentType)){

            error=newError('无效的 content-type.`);

}

if(error){

console.error(error.message);// 消费响应数据来释放内存。res.resume();return;

}

    res.on('data',(chunk) =>{

        //数据分段 下载 只要接收到数据 就会触发data事件 ,chunk 是每次接收到的数据片段。但是需要解码。

     console.log(chunk.toString('utf8'))

        //因为是数据片段 所以需要拼接

        rawData += chunk.toString('utf8');

        //将请求的数据保存到本地

        fs.writeFileSync('../xxx.html',rawData)

    })

    res.on('end',() =>{

        //数据传输完毕 执行该方法。

    })

} ).on('error',(err) =>{

    console.log('请求失败!')

});

这样的话 就可以爬取网站内容,然后利用qs 将文件保存到本地。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容