需求:
如果你是一名技術人員,那么可以看我接下來的文章,否則,請直接移步到我的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()方法關閉那個瀏覽器。
新聞熱點
疑難解答
圖片精選