分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

node 利用http和cheerio编写简易爬虫

发布时间:2023-09-06 02:21责任编辑:傅花花关键词:http爬虫

首先cnpm init创建一个package.json

引入cheerio模块 cnpm install --save cheerio

然后开始编写代码

let cheerio = require(‘cheerio‘), ???http = require(‘http‘), ???fs = require(‘fs‘), ???url = ‘http://so.8264.com/cse/search?q=2&s=9963133823733045431&p=‘, ???page = 1http.get(url + page, function (res) { ???let html = ‘‘; //用来存储请求网页的整个html内容 ???res.setEncoding(‘utf-8‘); //防止中文乱码 ???//监听data事件,每次取一块数据 ???res.on(‘data‘, function (chunk) { ???????html += chunk; ???}); ???//监听end事件,如果整个网页内容的html都获取完毕,就执行回调函数 ???res.on(‘end‘, function () { ???????// console.log(html) ???????var $ = cheerio.load(html, { ???????????????decodeEntities: false ???????????}), ???????????Arr = [] ???????//采用cheerio模块解析 ???html ???????$(‘.result‘).each(function (index, element) { ???????????const _t = $(this) ???????????Arr.push({ ???????????????‘title‘: _t.find(‘.c-title‘).text().trim(), ???????????????‘src‘: _t.find(‘a‘).attr(‘href‘).trim(), ???????????????‘img‘: _t.find(‘img‘).length > 0 ? _t.find(‘img‘).attr(‘src‘).trim() : ‘‘, ???????????????‘describe‘: _t.find(‘.c-abstract‘).text().trim() ???????????}) ???????}) ???????let writerStream = fs.createWriteStream(‘output.txt‘); ???????writerStream.write(JSON.stringify(Arr), ‘UTF8‘); ???????writerStream.end(); ???});}).on(‘error‘, function (err) { ???console.log(err);});

node 利用http和cheerio编写简易爬虫

原文地址:https://www.cnblogs.com/lmyt/p/9928492.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved