axios 自定义headers
javascript
axios.defaults.headers.common["User-Agent"] =
"Googlebot/2.1 (+http://www.google.com/bot.html)";
运行环境:
node :v18
javascript
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页。然后是一个死循环。 要控制次数,可以在最后一行修改:
javascript
for (let j = 0; j<100; j++) {
crawler();
}
程序没有做解析html的功能,首先调试通过后,会输出获取的html的文档大小。
下一节课我们会带大家去解析html的内容。