当前位置: 首页 > 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.yayakq.cn/news/42641/

相关文章:

  • 湘潭市网站建设科技有限公司建立购物网站
  • 做搜狗pc网站优化点wordpress 审批流
  • 做效果图兼职的网站有哪些app扁平化设计网站模板
  • 网站建设自己在家接单wordpress解封
  • 动易做网站如何wordpress 收费主题
  • 常州网站建设联系电话wordpress美化下载插件
  • 遵义网站制作小程序网站设计目的与规划怎么写
  • 网站js时间代码找灵感的网站
  • 电子商务个人网站可以备案吗网站维护需要的知识
  • 成都网站开发建设银川商城网站建设
  • e盒印网站开发俄罗斯国家馆电商平台
  • 网站运营推广选择乐云seocc域名做网站好吗
  • 自己网站做虚拟币违法吗怎样修改网站的主页内容
  • 自己做片头的网站网站开发运行环境论文
  • 网站图片像素多少湖北做网站找谁
  • 给一瓶水做网站欧洲vodafonewifi18mmpcc
  • 电商网站商品详情页ftp上传网站后怎么弄
  • 鄱阳县建设局网站网站设计的一般流程是什么
  • 在线做动图的网站广州谷歌seo公司
  • 找做网站公司经验表格布局网站
  • 网站底部分享怎么做成都网站建设的公司
  • 钢铁行业公司网站模板企业网站建设推荐乐云seo
  • 服务器购买网站惠州关键词排名提升
  • 专门做网站建设的公司wordpress搬家出问题
  • 网站被封怎么论坛交流平台
  • 易语言网站做软件下载网络推广培训教程
  • 权重6网站怎么做在线测网速
  • 济南教育加盟网站建设提供网站建设课程报告
  • 关于网站运营天河网站建设价格
  • 淘宝内部优惠券网站怎么建设十几万 建设网站