typescript - deno puppeteer 'כרום לא נמצא' מנסה לייבא תלות של npm
אני מנסה להשתמש ב-node-html-to-image ב-deno:
import nodeHtmlToImage from "npm:node-html-to-image";
nodeHtmlToImage({
output: './image.png',
html: '<html><body>Hello world!</body></html>'
})
.then(() => console.log('The image was created successfully!'))
deno run --allow-env --allow-read --allow-write that-file.ts גורם לשגיאה זו:
error: Uncaught Error: Unable to launch browser, error message: Could not find expected browser (chrome) locally. Run `npm install` to download the correct Chromium revision (982053).
at Cluster.<anonymous> (file:///Users/theonlygusti/Library/Caches/deno/npm/registry.npmjs.org/puppeteer-cluster/0.23.0/dist/Cluster.js:119:23)
at Generator.throw (<anonymous>)
at rejected (file:///Users/theonlygusti/Library/Caches/deno/npm/registry.npmjs.org/puppeteer-cluster/0.23.0/dist/Cluster.js:6:65)
איך אני יכול להשתמש בחבילת npm node-html-to-image מ-Deno?
תשובה #1
בעיקרון, זה נענו בלא ניתן למצוא את כרום הדפדפן הצפוי באופן מקומי.
החלק הספציפי ל-Deno הוא כי תיקיית ההתקנה של NPM שונה מהתקנות Node הרגילות.
כאשר אתה משתמש במציין npm ב־Deno, לדוגמה import nodeHtmlToImage from "npm:node-html-to-image";, חבילות ה־Node יותקנו בחלק מתיקיית המטמון של Deno:
- Windows:
<תיקיית משתמש>/AppData/Local/deno/npm/registry.npmjs.org/ - macOS:
~/Library/Caches/deno/npm/registry.npmjs.org - לינוקס:
$XDG_CACHE_HOME/deno/npm/registry.npmjs.orgאו$HOME/.cache/deno/npm/registry.npmjs.org
ובפרט עבור Puppeteer: deno/npm/registry.npmjs.org/puppeteer/13.7.0
בהודעת השגיאה מצוין ש
הרץ
npm installכדי להוריד את גרסת הכרומיום הנכונה (982053)
זה אומר שעליך להריץ npm install בתיקייה של Puppeteer שמופיעה למעלה, שמכילה קובץ בשם install.js.
זה יתקין את הגרסה הנכונה של חבילת כרומיום לתוך התיקייה של Puppeteer תחת .local-chromium.
החדשות הרעות הן (לפחות תחת Windows), שכנראה תקבל את השגיאה הבאה, שהיא
שגיאה בלתי נתפסת: לא ניתן להפעיל את הדפדפן, הודעת שגיאה: Windows תומכת רק ב-ctrl-c (SIGINT) ו-ctrl-break (SIGBREAK).