需求:
如果你是一名技术人员,那么可以看我接下来的文章,否则,请直接移步到我的github仓库,直接看文档使用即可
仓库地址:附带文档和源码
本需求使用到的技术:Node.js和puppeteer
小试牛刀,爬取京东资源
const puppeteer = require('puppeteer'); // 引入依赖 (async () => { //使用async函数完美异步 const browser = await puppeteer.launch(); //打开新的浏览器const page = await browser.newPage(); // 打开新的网页 await page.goto('https://www.jd.com/'); //前往里面 'url' 的网页const result = await page.evaluate(() => { //这个result数组包含所有的图片src地址let arr = []; //这个箭头函数内部写处理的逻辑 const imgs = document.querySelectorAll('img');imgs.forEach(function (item) {arr.push(item.src)})return arr });// '此时的result就是得到的爬虫数据,可以通过'fs'模块保存'})()复制过去 使用命令行命令 ` node 文件名 ` 就可以运行获取爬虫数据了 这个 puppeteer 的包 ,其实是替我们开启了另一个浏览器,重新去开启网页,获取它们的数据。
注意,上面这一切逻辑,都是puppeteer这个包帮我们在看不见的地方开启了另外一个浏览器,然后处理逻辑,所以最终要调用browser.close()方法关闭那个浏览器。
新闻热点
疑难解答
图片精选