当前位置: 首页 > news >正文

网上书城网站开发意义标题关键词优化技巧

网上书城网站开发意义,标题关键词优化技巧,重庆建筑信息网查询,五道口网站建设同前端爬取参数一样,输入三个参数进行爬取 注意点也一样: 注意分页的字段需要在代码里面定制化修改,根据你爬取的接口,他的业务规则改代码中的字段。比如我这里总条数叫total,人家的不一定。返回的数据我这里是data.r…

同前端爬取参数一样,输入三个参数进行爬取

注意点也一样:
注意分页的字段需要在代码里面定制化修改,根据你爬取的接口,他的业务规则改代码中的字段。比如我这里总条数叫total,人家的不一定。返回的数据我这里是data.rows,看看人家的是叫什么字段,改改代码。再比如我这里的分页叫pageNum,人家的可能叫pageNo

在这里插入图片描述
data目录手动建立上哦,要放爬下来的数据

依赖

{"dependencies": {"axios": "^1.6.5","colors": "^1.4.0","fs": "^0.0.1-security","readline": "^1.3.0"}
}

代码

const readline = require("readline");
const axios = require('axios');
const fs = require("fs");
const colors = require('colors');// 创建询问实例
let RL = readline.createInterface({input: process.stdin,output: process.stdout
})// 封装异步询问
function question(question) {return new Promise((resolve, reject) => {RL.question(`${question}\t`, function (value) {return resolve(value);})})
}var total = 0;
var pageNum = 1;
var pageSize = 30;
var api = "";
var headers = "";
var params = "";// 循环异步方法,执行同步结果
(async function () {const questions = ["请输入接口:", "请输入请求头:", "请输入参数:"];for (let i = 0; i < questions.length; i++) {const value = await question(questions[i]);if (i === 0) {api = value;} else if (i === 1) {headers = value;} else {params = value;}}RL.close();
})()// 监听readline关闭,结束终端输入
RL.on("close", function () {console.log(`<<<------------------------- 开始爬取 ------------------------->>>\n`.blue);// console.log(api, headers, params);crawling();
})// 封装接口请求
async function getData() {const response = await axios({url: api,method: "post",headers: {"Content-Type": "application/json",...JSON.parse(headers)},data: JSON.stringify({...JSON.parse(params),"pageSize": pageSize,"pageNum": pageNum})})return response.data;
}// 爬取执行入口
async function crawling() {const data = await getData();console.log(data);if (data.code !== 0) {console.log('================= 数据读取失败 ================='.red);process.exit(0);}console.log('================= 数据读取成功 ================='.green);total = data.total;const page = Math.ceil(total / pageSize);console.log(`${page}`);saveFile(data.rows, `第1页`);loading();
}// 持续执行爬取
async function loading() {const page = Math.ceil(total / pageSize);for (let i = 1; i < page; i++) {pageNum++;const data = await getData();saveFile(data.rows, `${i + 1}`);}console.log(`<<<------------------------- 爬取完毕,已下载数据 ------------------------->>>\n`.bgGreen);total = 0;pageNum = 1;process.exit(0);
}// 下载json文件
function saveFile(res, name) {console.log(`<<<------------------------- 开始写入 ------------------------->>>\n`.blue);console.log(name);const writerStream = fs.createWriteStream("data/" + name + ".json");writerStream.write(JSON.stringify(res));writerStream.end();writerStream.on('finish', function () {console.log(`<<<------------------------- 写入完成 ------------------------->>>\n`.green);});writerStream.on('error', function (err) {console.log(err);console.log(`<<<------------------------- 写入错误 ------------------------->>>\n`.red);process.exit(0);});
}
http://www.dinnco.com/news/27685.html

相关文章:

  • 安庆网站建设公司简新手怎么开始做电商
  • 个人开网站网络营销策略理论
  • 用CMS做网站的好处产品宣传方案
  • 公司网站建设的费用如何入账谷歌google play官网
  • 沈阳建设网站公司91永久海外地域网名
  • dw做网站字体 别人 电脑网站权重划分
  • 做全屏网站设计时容易犯的错最新疫情爆发
  • 网站左侧分类菜单怎么做阿里巴巴官网首页
  • 哈尔滨网站搭建今日军事新闻视频
  • 生物网站建设考拉seo
  • 网站开发设计思路关键词优化公司哪家好
  • 红页网站如何做推广方式有哪些
  • 橙子建站短信验证码会诈骗网搜网
  • 阿里巴巴企业网站怎么做磁力bt种子搜索
  • 做网站一定要自己搭建服务器吗百度推广运营工作是什么
  • 智能建网站宣传推广方案
  • 网站程序有哪些邯郸网站优化公司
  • 用axure做的网站成品新媒体运营主要做什么
  • 微信的在线客服系统百度站长工具seo查询
  • wordpress置顶文章顺序天津网站优化公司
  • 重庆南岸营销型网站建设价格燃灯seo
  • 成人免费做视频网站有哪些媒体公关公司
  • to b网站推广怎么做网络营销推广方案步骤
  • 做啥网站最挣钱seo是什么服
  • 构建动态网站设计seo优化多久能上排名
  • 微网站建设开发工具昆明长尾词seo怎么优化
  • 吉安网站建设baisuhl搜索引擎竞价广告
  • 几大门户网站代发qq群发广告推广
  • 用html做卖珠宝的网站怎么建网站
  • 站长工具seo优化建议培训网站源码