难道爬虫只能用 python 做?不,我们上天的 Node.js 也可以做!
需要准备的包
Node.js 的最新版本 下载地址 Node.js 官网
npm 包管理器下载 下载最新的官网版本 Node.js 会自带 npm
npm 的第三方包 puppeteer 在对应的 js 文件内运行命令行工具 npm i puppeteer -D 即可
爬虫在获取某些有保护机制的网页时可能会失效
基础版代码 复制过去 使用 node 文件名 就可以运行获取爬虫数据了
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
});
await browser.close()
})()
这个 puppeteer 的包,替我们开启了另一个浏览器,重新去开启网页,获取它们的数据。