nodejs如何利用crawler爬取数据在通过node-xlsx插件并生成Excel文件,下面web建站小编给大家详细介绍一下实现方法。
利用crawler爬取数据:
1、安装脚手架:
yarn add crawler
2、代码实现介绍:
const Crawler = require("crawler");
const fs = require("fs")
const { resolve } = require("path")
let crawler = new Crawler({
timeout: 10000,
jQuery: true,
});
let crawler = new Crawler({
timeout: 10000,
jQuery: true,
});
function getPokemon() {
let uri = "" // 宝可梦图鉴地址
let data = []
return new Promise((resolve, reject) => {
crawler.queue({
uri,
callback: (err, res, done) => {
if (err) reject(err);
let $ = res.$;
try {
let $tr = $(".roundy.eplist tr");
$tr.each((i, el) => {
let $td = $(el).find("td");
let _code = $td.eq(1).text().split("\n")[0]
let _name = $td.eq(3).text().split("\n")[0]
let _attr = $td.eq(4).text().split("\n")[0]
let _other = $td.eq(5).text().split("\n")[0]
_attr = _other.indexOf("属性") != -1 ? _attr : `${_attr}+${_other}`
if (_code) {
data.push([_code, _name, _attr])
}
})
done();
resolve(data)
} catch (err) {
done()
reject(err)
}
}
})
})
}
//备注:代码中引入了$,所以需要开启 jQuery 模式
利用node-xlsx写入Excel
1、安装脚手架:
yarn add node-xlsx
2、代码实现介绍:
const xlsx = require("node-xlsx")
getPokemon().then(async data => {
let title = ["编号", "宝可梦", "属性"]
let list = [{
name: "关都",
data: [
title,
...data
]
}];
const sheetOptions = { '!cols': [{ wch: 15 }, { wch: 20 }, { wch: 20 }] };
const buffer = await xlsx.build(list, { sheetOptions })
try {
await fs.writeFileSync(resolve(__dirname, "data/pokemon.xlsx"), buffer, "utf8")
} catch (error) { }
})
利用express读取Excel
1、安装脚手架:
yarn add express
2、代码实现介绍:
const express = require("express")
const app = express();
const listenPort = 3000;
app.get("/pokemon",(req,res)=>{
let data = xlsx.parse(resolve(__dirname, "data/pokemon.xlsx"));
res.send(data)
})
app.listen(listenPort, () => {
console.log(`Server running at http://localhost:${listenPort}/`)
})
html网页上如何把文件压缩成zip代码示列(前端HTML/JavaScript和后端Node.js + Express)
如何利用PHPExcel类库建php将数据格式转为excel
上面是“nodejs爬取数据并生成Excel文件实现代码介绍”的全面内容,想了解更多关于 jsnodejs 内容,请继续关注web建站教程。
当前网址:https://ipkd.cn/webs_2345.html
workflows工作流
一个女孩骑着一辆生锈的现代摩托车
图生图工作流:一键转换成高清动漫照片
一群邪恶的小黄人ComfyUI工作流
一个威武雄壮的战士ComfyUI工作流
一头巨大的古代大象背后建着一座城市
一位身着传统红色服装的女战士ComfyUI工作流
一个冰淇淋ComfyUI工作流
一座生动的点彩主义灯塔ComfyUI工作流
猜你喜欢
声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

HTML5 Canvas 刻度尺
js实现table表格动态新增行和列表
js导出excel插件(兼容mac电脑Numbers表格)
黑客入侵效果代码
3D彩色卡片
利用css3做一个动态loading效果
利用canvas画几个好玩的星云物种
用canvas实现画板涂鸦效果










