NodeJS 爬虫

技术栈
cheerio: 将抓取的html直接转化为jquery对象,可以直接对获取信息进行DOM操作。
puppeteer: Puppeteer是谷歌官方出品的一个通过DevTools协议控制headless Chrome的Node库。可以通过Puppeteer的提供的api直接控制Chrome模拟大部分用户操作来进行UI Test或者作为爬虫访问页面来收集数据。

https://nodejs.org/dist/v10.16.2/node-v10.16.2.pkg
https://github.com/GoogleChrome/puppeteer
npm i puppeteer
default.js

const path = require('path')

module.exports = {
screenshot: path.resolve(__dirname, '../screenshot')
}

crawler.js

const puppeteer = require('puppeteer');
const {screenshot} = require('./config/default');

(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('http://news.baidu.com/');

console.log('Date:', Date.now()); //Date

await page.screenshot({
path: ${screenshot}/${Date.now()}.png
});

await page.pdf({
path: ${screenshot}/${Date.now()}.pdf, format: 'A4'
});

await browser.close();
})();

你可能感兴趣的:(NodeJS 爬虫)