【node】12、Koa实现简单爬虫案例

效果图如下:
在这里插入图片描述

首先我们新建文件夹→进入终端:
初始化node项目:npm init -y
安装koa搭建服务模块:npm install koa
安装superagent发送请求模块:npm install superagent
安装cheerio文档转对象模块:npm install sheerio

app.js

const request = require('superagent');  //发送请求模块
const cheerio = require('cheerio');     //转对象模块
const Koa = require('koa');             //搭建服务模块

const app = new Koa;   //开启服务
//需要爬取的网站
const url = 'https://www.lagou.com/zhaopin/webqianduan/?labelWords=label'; 

app.use(async ctx =>{
  const arr = [];   //存放爬取到的数据
  const data = await new Promise(resolve =>{
    request
      .post(url)  //爬取数据请求的地址
      .end((err, res)=>{
        const data = res.text;  //请求到的html文档
        const $ = cheerio.load(data); //html转对象
        //去分析原网页的dom结构 li的class为.con_list_item
        $('.con_list_item').each((i,v)=>{
          const $v = $(v);
          const obj = { //爬取class=position_link的a标签的href
            src: $v.find('a.position_link').prop("href"),
            zhili: $v.find('.li_b_l').text().trim(),
            money: $v.find('.money').text().trim(),
            name: $v.find('.company_name a').prop("href"),
            industry: $v.find('.industry').text().trim(),
          }
          arr.push(obj);
        })
        resolve(arr)
      })
  })
  ctx.body = arr; //将爬取的数据返回给前端
})

app.listen(3000);

项目文件展示如下:
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值