手動下載 Chrome,解決 puppeteer 無法使用問題
原文地址:https://marxjiao.com/2018/08/26/puppeteer-install/
因為網路原因,國內安裝 puppeteer
的時候會報網路超時。這裡使用 puppeteer-core
之後使用手動下載的 Chrome
進行操作。思路很簡單,安裝一個不帶瀏覽器的 puppeteer
,再使用的時候將瀏覽器地址指向一個可執行的 Chrome
瀏覽器檔案。
安裝
安裝puppeteer-core
。
yarn add puppeteer-core
找到 puppeteer 中對應的瀏覽器並下載
在 node_modules/puppeteer-core/lib/BrowserFetcher.js
中找到各平臺 Chrome
下載地址。其中%s
替換為 DEFAULT_DOWNLOAD_HOST
的值,%d
替換為版本號。
在 node_modules/puppeteer-core/packages.json
中找到版本號
替換後得到下載地址
https://storage.googleapis.com/chromium-browser-snapshots/Mac/579032/chrome-mac.zip
下載後解壓,放在專案目錄中,這裡我放在 chrome 下。
使用
這樣就可以使用了。
使用程式碼
const puppeteer = require('puppeteer-core');
const path = require('path');
(async () => {
const browser = await puppeteer.launch({
// 這裡注意路徑指向可執行的瀏覽器。
// 各平臺路徑可以在 node_modules/puppeteer-core/lib/BrowserFetcher.js 中找到
// Mac 為 '下載檔案解壓路徑/Chromium.app/Contents/MacOS/Chromium'
// Linux 為 '下載檔案解壓路徑/chrome'
// Windows 為 '下載檔案解壓路徑/chrome.exe'
executablePath: path.resolve('./chrome/Chromium.app/Contents/MacOS/Chromium')
});
const page = await browser.newPage();
await page.setViewport({
width: 375,
height: 667,
deviceScaleFactor: 1,
isMobile: true
})
await page.goto('https://marxjiao.com/');
await page.screenshot({path: 'marx-blog.png'});
await browser.close();
})();
執行檔案
node index.js
執行後可看到,圖片已經截圖出來了
相關文章
- [linux]解決wayland協議下 google-chrome 無法輸入中文問題Linux協議GoChrome
- 解決ASM無法啟動問題ASM
- 解決無法使用VI的問題
- 解決go get 下載github專案慢或無法下載的問題!GoGithub
- 從根本解決jenkins無法下載外掛ssl證書問題Jenkins
- 使用PorterDuff解決clipPath無法抗鋸齒問題
- 關於Quartus的start按鈕灰色無法下載的問題的解決
- 解決vscode安裝後無法啟動的問題VSCode
- 【PyCharm】解決虛擬環境pip無法使用問題PyCharm
- goland中npm無法使用的問題及解決方法GoLandNPM
- Oracle 解決like中無法匹配下劃線的問題Oracle
- VSCode 中 Markdown Preview Enhanced 外掛利用 Chrome (Puppeteer) 匯出 PDF 檔案使用說明與問題解決VSCodeViewChrome
- UiBot無法抓取Chrome元素和資料抓取工具無法使用的解決方案UIChrome
- VMware DHCP Service服務無法啟動問題的解決
- Parallels Tools 無法安裝問題解決Parallel
- 解決codeblocks無法除錯的問題BloC除錯
- 解決Centos無法yum源的問題CentOS
- 解決split無法得到空字串問題字串
- SpringBoot 2.0中SpringWebContext 找不到無法使用的問題解決Spring BootWebContext
- IDEA解決JSP頁面無法使用EL表示式問題IdeaJS
- 解決重灌系統後重新下載eclipse無法開啟之前專案的問題Eclipse
- golang windows10下 go build 無法編譯 問題解決GolangWindowsUI編譯
- 蘋果電腦下載的google chrome無法使用怎麼辦蘋果GoChrome
- 微信中無法下載app的解決方案APP
- CentOS 7 yum 無法下載的解決方法CentOS
- JS 下載檔案方法分享(解決圖片檔案無法直接下載和 IE相容問題)JS
- 解決CentOS7系統無法使用中文輸入法的問題CentOS
- chrome + puppeteerChrome
- 解決matplotlib使用plt.pause動態繪圖視窗無法關閉問題繪圖
- ubuntu 18.10 Ctrl+Alt+E 無法使用terminator 分屏問題解決Ubuntu
- AI換臉:FaceFusion 3.5.0更新,解決老版本無法使用問題!AI
- OXS系統下Python input()函式在Sublime Text 無法互動問題解決方案Python函式
- N1盒子掛載磁碟-解決盒子重啟後無法自動掛載問題
- 解決 raw.githubusercontent.com 無法訪問的問題Github
- 解決寶塔皮膚無法訪問的問題?
- 安卓手機改造伺服器——解決chroot下無法使用systemctl安卓伺服器
- react 專案 使用react-audio-player,避免chrome無法自動開啟聲音問題ReactChrome
- Laradock 網路問題不能下載解決