Nodejs实现爬虫抓取数据实例解析

  

开始之前请先确保自己安装了node . js环境,如果没有安装,大家可以到下载安装。

  

        npm安装搞——save-dev      

搞是一个轻量的,渐进式的ajax api,可读性好,学习曲线低,内部依赖nodejs原生的请求api,适用于nodejs环境下

        npm安装好呀——save-dev      

加油是nodejs的抓取页面模块,为服务器特别定制的,快速、灵活,实施的jQuery核心实现。适合各种Web爬虫程序。相当于node . js中的jQuery

  

     //导入依赖包   const http=要求(“http”);   const path=要求(“路径”);   const url=要求(“url”);   const fs=要求(fs);   const搞=要求(“搞”);   const加油=要求(“加油”);      

        搞   . get (" https://www.zhipin.com/job_detail/& # 63;城市=100010000,来源=10,查询=% E5 % 89% 8 d % E7%AB % AF”)   指标(最终(误差、响应)=祝辞{//获取页面文档数据   var内容=response.text;//加油也就是nodejs下的jQuery将整个文档包装成一个集合,定义一个变量美元接收   var=美元cheerio.load(内容);//定义一个空数组,用来接收数据   结果var=[];//分析文档结构先获取每个李再遍历里面的内容(此时每个李里面就存放着我们想要获取的数据)   $("。工作列表li .job-primary”) . each((指数、价值)=祝辞{//地址和类型为一行显示,需要用到字符串截?/地址   让地址=$(价值);(.info-primary)定格().eq (1) . html ();//类型   让类型=$(价值);(" .info-company p ") . html ();//解码   地址=unescape (address.replace (x/g/和#,% u) .replace (/,/g));   类型=unescape (type.replace (x/g/和#,% u) .replace (/,/g))//字符串截取   让addressArr=address.split (' & lt;电磁类=皏line祝辞& lt;/em>”);   让typeArr=type.split (' & lt;电磁类=皏line祝辞& lt;/em>”);//将获取的数据以对象的形式添加到数组中   result.push ({   标题:$(价值);(. name .job-title)。text (),   货币:美元(价值);(. name r)。text (),   地址:addressArr,   公司:$(价值);(“.info-company“)。text (),   类型:typeArr,   位置:$(价值);(“.info-publis . name”)。text (),   txImg: $(价值);(.info-publis img) .attr (" src "),   时间:$(价值);(" .info-publis p ")。text ()   });//控制台。日志(typeof(价值);美元(“.info-primary”)定格().eq (1) . html ());   });//将数组转换成字符串   结果=JSON.stringify(结果);//将数组输出到json文件里刷新目录即可看到当前文件夹多出一个boss.json文件(打开的老板。json文件,ctrl +全选之后ctrl + K,再按ctrl + F即可将json文件自动排版)   fs.writeFile (“boss.json”,因此,“utf - 8”,(错误)=祝辞{//监听错误,如正常输出,则打印null   如果错误==null) {   console.log(“恭喜您,数据爬取成功!请打开json文件,先按Ctrl + A,再按Ctrl + K,最后Ctrl + F格式化后查看json文件(仅限Visual Studio代码编辑器)”);   }   });   });之前      

  

以上所述是小编给大家介绍的Nodejs实现爬虫抓取数据,希望对大家有所帮助,如果大家有任何疑问请给我留的言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

Nodejs实现爬虫抓取数据实例解析