README
crawler.js
简介
cralwer.js
是一个JavaScript的异步爬虫框架。集合了中间件,请求,解析。三大板块
快速入门
[TOC]
1.从最简单的开始
// 因为在开发的时候使用的是默认导出,这里你可以取你想要的名字
// 注意,这里要使用import,因为是es module
import crawler from '@ga0neng/crawler.js';
async function app(){
let postTitle = [];
crawler.setUrl(['https://editorwang.gitee.io']);
let parse = await crawler.parse()
let $ = parse.find('.post-title-link')
for (const item of $[0]){
title.push(item.children[0].data);
}
console.log(postTitle)
}
app()
2.使用中间件
import crawler from '@ga0neng/crawler.js';
async function app(){
// req 是请求设置,继承自http.ReuqestOptions
// next 将会提前中断这个中间件,直接启动下一个中间件
crawler.use((req,next)=>{
/*
因为继承自RequestOptions。所以你可以任意修爱你的请求头
可以修改你的user-agent防止你的爬虫被封杀
*/
})
}
app()
3.获取Response
如果你不想使用我们提供的解析器,您可以使用getResponse方法来获取请求的信息。然后使用自己的解析器进行解析。
import crawler from '@ga0neng/crawler.js';
async function app(){
crawler.setUrl(['https://editorwang.gitee.io']);
let response = await crawler.getResponse();
console.log(response); // 返回一个字符串
}
app()
不过与parse不同的是,getResponse返回的是一个字符串数组,而parse将返回一个静态类,之所以返回静态类是因为将解析工具都放到了一个叫做parse的类中,方便开发者们自取