因为网络原因,国内安装<代码>操纵> 代码的时候会报网络超时。这里使用<代码> puppeteer-core 代码>之后使用手动下载的<代码> 代码>铬进行操作。思路很简单,安装一个不带浏览器的<代码>操纵> 代码,再使用的时候将浏览器地址指向一个可执行的<代码> 代码>铬浏览器文件。
安装
安装<代码> puppeteer-core> 代码。
纱添加puppeteer-core
找到操纵中对应的浏览器并下载
在<代码> node_modules/puppeteer-core/lib/BrowserFetcher。js代码>中找到各平台<代码> 代码>铬下载地址。其中<代码> % s 代码>替换为<代码> DEFAULT_DOWNLOAD_HOST> 代码的值,<代码> % d> 代码替换为版本号。
在<代码> node_modules puppeteer-core/包。json> 代码中找到版本号
替换后得到下载地址
https://storage.googleapis.com/chromium-browser-snapshots/Mac/579032/chrome-mac.zip
下载后解压,放在项目目录中,这里我放在chrome下。
<强>使用强>
这样就可以使用了。
<强>使用代码强>
const操纵木偶的人=要求(“puppeteer-core”); const path=要求(“路径”); (异步()=比;{ const浏览器=等待puppeteer.launch ({//这里注意路径指向可执行的浏览器。//各平台路径可以在node_modules/puppeteer-core/lib/BrowserFetcher。js中找到//Mac为“下载文件解压路径/Chromium.app/内容/MacOS/铬的//Linux为“下载文件解压路径/铬的//窗口为“下载文件解压路径/chrome.exe ' executablePath: path.resolve(’。/铬/Chromium.app/内容/MacOS/铬”) }); const页面=等待browser.newPage (); 等待page.setViewport ({ 宽度:375年, 身高:667, deviceScaleFactor: 1、 isMobile:真 }) 等待page.goto (“https://marxjiao.com/?; 等待页面。截图({路径:“marx-blog.png”}); 等待browser.close (); })();
执行文件
节点index.js
执行后可看的到,图片已经截图出来了
代码地址:https://github.com/MarxJiao/puppeteer-test
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。