javascript - 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?
解决方案
您的请求应该是异步的:
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 添加参数。
推荐阅读
- javascript - Ionic5 拆分字符串
- javascript - 是否可以用 JavaScript 类覆盖变量?
- docker - Docker-compose 未正确公开端口
- office-js - 如何在我的 Outlook 加载项中支持 Gmail
- python - 烧瓶中的 after_request 在请求完成后运行,但终端显示否则
- c# - C# 从 SslStream 连续读取(长连接,持续长达数天)并且有效地没有无限循环
- arrays - 如何使用 Swift 5 找到结构数组项之一的最小值或最大值项索引
- php - 在谷歌我的业务 api 中找不到获取方法
- android - UITextView 像 Android 一样的自动换行
- python - 我想用 bs4 从亚马逊获取产品的标题