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

nodejs 爬虫 axios 异步爬虫 教程 【一】

axios 自定义headers

axios.defaults.headers.common["User-Agent"] ="Googlebot/2.1 (+http://www.google.com/bot.html)";

运行环境:

 node :v18

const axios = require("axios");
axios.defaults.headers.common["User-Agent"] ="Googlebot/2.1 (+http://www.google.com/bot.html)";async function crawler() {try {let task = [];console.log(new Date().getTime());console.time("run");for (let i = 1; i < 100; i++) {const url = `https://licai.cofool.com/ask/new-${i}.html`;const response = await axios.get(url);task.push(response);}const result = await Promise.all(task);for (let item of result) {ret_obj = item.data.length;console.log(ret_obj);}console.timeEnd("run");console.log(new Date().getTime());} catch (error) {console.error(error);}
}
for (let j = 0;; j++) {crawler();
}

程序不断遍历翻页url,从第一页到100页。然后是一个死循环。 要控制次数,可以在最后一行修改:

for (let j = 0; j<100; j++) {crawler();
}

程序没有做解析html的功能,首先调试通过后,会输出获取的html的文档大小。

下一节课我们会带大家去解析html的内容。

http://www.lryc.cn/news/161923.html

相关文章:

  • Swift学习笔记三(Dictionary 篇)
  • javax.mail 遇到501 mail from address must be same as authorization user 的問題
  • 【Python】网络编程
  • 客户端开发常用框架
  • 数据分析综述
  • 区块链技术与应用 - 学习笔记2【密码学基础】
  • 制作Linux发行版安装镜像:复刻centos镜像安装ISO
  • 【复习socket】每天40min,我们一起用70天稳扎稳打学完《JavaEE初阶》——29/70 第二十九天
  • postgresql-常用数学函数
  • Docker实战技巧(一):常用命令与最佳实践
  • 使用CUDA计算GPU的理论显存带宽
  • npm install依赖冲突解决办法
  • 植物大战僵尸各种僵尸攻略
  • Scrum敏捷开发企业实战培训
  • uniapp 下拉框数据回显的问题
  • 使用php 获取时间今天、明天、昨天时间戳的详解
  • IIS解析漏洞复现
  • 生活随笔-吐槽篇
  • vscode debug python launch.json添加args不起作用
  • 信息化发展23
  • FlinkCDC 菜鸟教程-文章目录
  • 从零开始-与大语言模型对话学技术-gradio篇(4)
  • OpenCV项目实战(1)— 如何去截取视频中的帧
  • 「程序员必须掌握的算法」动态规划「上篇」
  • 什么是Linux
  • 学习笔记|定时器|STC中断|定时器时间计算|STC32G单片机视频开发教程(冲哥)|第十一集:定时器的作用和意义
  • 第28节-PhotoShop基础课程-图层操作
  • CGAL 闵可夫斯基和(Minkowski Sums)
  • Layui快速入门之第二节布局容器(固定宽度与完整宽度)
  • 异地容灾系统和数据仓库中数据同步的设计软件的功能模型