2

否则,当我尝试使用 Puppeteer 运行测试时,我得到Error: Chromium revision is not downloaded. Run "npm install" or "yarn install"

似乎npm i在我的部门中使用 Puppeteer 就足够了,但是安装完成后,我需要cd进入/node_modules/puppeteer然后运行node install.js以下载正确的修订版。

当我做初始npm i我看到

> puppeteer@1.13.0 install /Users/.../node_modules/puppeteer
> node install.js

Downloading Chromium r549031 - 76 Mb [====================] 100% 0.0s
Chromium downloaded to /Users/.../node_modules/puppeteer/.local-chromium/mac-549031

但这不起作用,我收到修订错误。

在我node install.js进入 Puppeteer 的目录之后,我看到了

Downloading Chromium r637110 - 85.9 Mb [====================] 100% 0.0s
Chromium downloaded to /Users/.../node_modules/puppeteer/.local-chromium/mac-637110

那我可以走了。

任何想法为什么?这是在 macOS 和 Node 10.15 上,我认为在 CI 中执行此操作会更加困难。

我四处搜索,发现其他人有这个问题,但没有解决这个问题的可靠方法。

包.json

    "devDependencies": {
        "@babel/core": "^7.3.3",
        "@babel/preset-env": "^7.3.1",
        "babel-jest": "^24.1.0",
        "babel-loader": "^8.0.5",
        "eslint": "^5.14.1",
        "html-webpack-plugin": "^3.2.0",
        "husky": "1.1.2",
        "jest": "^24.1.0",
        "jest-puppeteer": "^4.1.0",
        "lint-staged": "7.3.0",
        "prettier-eslint-cli": "4.7.1",
        "puppeteer": "^1.13.0",
        "webpack": "^4.29.5",
        "webpack-bundle-analyzer": "^3.1.0",
        "webpack-cli": "^3.2.3",
        "webpack-dev-server": "^3.2.1",
        "webpack-shell-plugin": "^0.5.0"
    },
4

4 回答 4

4

我只能通过在命令行上使用以下命令手动安装 Chromium 来解决上述问题

node node_modules/puppeteer/install.js
于 2020-03-25T06:35:43.280 回答
1

以下是可能解决此问题的一些步骤,

  • 尝试使用puppeteeras dependency而不是devDependency
  • 删除任何锁定文件,例如yarn.lockpackage-lock.json
  • 强制清理 npm 缓存npm cache clean --force
  • 清理纱线缓存(如果安装了纱线)yarn cache clean
  • 现在所有缓存的数据都消失了,您可以随意npm install再次运行。
  • 如果这产生了您之前遇到的相同错误,请尝试使用yarn.
  • 如果这不能解决错误,请尝试安装确切的 puppeteer 版本,yarn add puppeteer@1.13.0而不是^.

您不必进入node_modules文件夹,也不必一直遵循上述步骤,只是缓存可能在某处损坏。

于 2019-03-20T10:35:35.060 回答
0

不幸的是,我package.json添加了另一个模块,并且有效地为 Puppeteer 的修订进行了硬编码。puppeteer_chromium_revision.npmrc

于 2019-03-20T21:10:17.160 回答
0

以下步骤对我有用:

  • 删除锁文件(如 yarn.lock 和 package-lock.json)
  • 强制清理 npm 缓存(npm cache clean --force / yarn cache clean)
  • 跑 npm install
于 2020-02-28T05:54:55.057 回答