首页 > 解决方案 > node.js win10 puppeteer 可执行路径字符串

问题描述

我在 Windows 10 命令提示符下使用 node.js 项目,该项目应该使用 puppeteer 启动 chrome,然后执行其他一些网络爬取操作。我已经为这个项目运行了 npm install ,但是当我使用 运行它时node app.js,我收到一个错误“错误:找不到进程“chrome.exe”。,我的 puppeteer 代码像这样初始化浏览器:

    let args = ["--lang=en-US,en", '--no-sandbox', '--disable-setuid-sandbox', '--disable-extensions']
    var exPath = "C:\\Users\\marti\\Downloads\\chrome-win\\chrome-win\\chrome.exe"
    var options = {
        executablePath: exPath,
        headless: false,
        args
    };

如果我在另一个命令提示符窗口中运行start C:\\Users\\marti\\Downloads\\chrome-win\\chrome-win\\chrome.exe它,它将完美地打开一个铬窗口。node.js windows 10 命令提示符 puppeteer 是否有我可能缺少的 arg?

标签: javascriptnode.jsnpmpuppeteerchromium

解决方案


您的请求应该是异步的:

const browser = await puppeteer.launch({
    executablePath: "C:\\Users\\marti\\Downloads\\chrome-win\\chrome-win\\chrome.exe",
    headless: false,
    args: ["--lang=en-US,en", '--no-sandbox', '--disable-setuid-sandbox', '--disable-extensions']
});

您使用 puppeteer 的功能应该是类型async function

如果问题仍然存在,请尝试向'--disable-dev-shm-usage'args 添加参数。


推荐阅读