Google chrome 在macos上已经安装的chrome上运行Puppeter

Google chrome 在macos上已经安装的chrome上运行Puppeter,google-chrome,puppeteer,Google Chrome,Puppeteer,1.如何在已安装的chrome in mac机器上运行木偶剧脚本。我尝试了以下脚本,但无法运行 2.有没有办法打开具有特定窗口大小的chrome窗口这里我不是在说视口,我尝试使用args“-app shell host window size=1600x1239”--不工作 有谁能帮我解决以上两个问题吗。提前谢谢你的帮助 const puppeter=require('puppeter'); (异步()=>{ const browser=wait puppeter.launch({ 无头:错,

1.如何在已安装的chrome in mac机器上运行木偶剧脚本。我尝试了以下脚本,但无法运行

2.有没有办法打开具有特定窗口大小的chrome窗口这里我不是在说视口,我尝试使用args“-app shell host window size=1600x1239”--不工作

有谁能帮我解决以上两个问题吗。提前谢谢你的帮助

const puppeter=require('puppeter');
(异步()=>{
const browser=wait puppeter.launch({
无头:错,
可执行路径:'/Applications/Google Chrome.app/',
args:[“--应用程序外壳主机窗口大小=1600x1239”]
});
const page=wait browser.newPage();
等待页面。转到('http://localhost:8282/publisher/login' ,{
等待至:“加载”
});
等待page.screenshot({path:'../screenshots/cms local.png'});
//等待浏览器关闭();
})();
在遵循下面的Eric评论和jegadesh回答之后,我更改了下面的代码,现在它可以正常工作了,除了一个小问题:窗口以正确的大小打开,但该窗口中的内容被限制为其他大小,请参见下面的屏幕截图

工作代码:

const browser=wait puppeter.launch({
无头:错,
//可执行路径:'/Applications/Google Chrome.app/',
参数:[“--窗口大小=24001239”]
});

关于你的第一个问题,Puppeter文档表明它可以与安装的Chrome版本一起工作,而不是Chrome

要使用已安装的版本,请执行以下操作:

  • 设置环境变量puppeter\u SKIP\u chromiu\u下载 ()
  • 正如您已经指出的,使用executablePath
关于第二个问题,请使用--windowsize。例如:“--窗口大小=800600”


请注意,如果打开的浏览器窗口具有明确设置的窗口大小,则该大小将用于所有未来窗口(忽略为未来窗口指定的任何大小)。要使新窗口大小生效,您必须关闭所有以前打开的窗口。

您可以设置
可执行路径:'/Applications/Google Chrome.app/'

您可以浏览
chrome://version/
在chrome中,找到
executableFilePath
(可能不是这个名字,我的chrome不是英文版),使用这个

请参见下面的屏幕截图


对我来说,当我设置
可执行路径:'/Applications/Google Chrome.app/Contents/MacOS/Google Chrome'

检查——窗口大小和使用的路径感谢Eric…我能够在已经安装的Chrome上运行,方法是给出你在文章中提到的MAC Chrome路径developers.google.com/web/updates/2017/04/headless-chrome…窗口大小也在工作,但在运行脚本后,它会以正确的大小打开窗口,但窗口中的内容看起来受限于其他宽度,请参见屏幕截图,然后我转到打开的页面,并使用鼠标单击打开devtools,内容大小将重新调整为整个窗口大小。我将此问题更正为使用wait page.setViewport({width:2300,height:1239});是否仍要将视口与现有窗口同步size@ebidel:有没有办法从文档中打开具有特定配置文件的chrome,我认为没有办法,是否有任何黑客或任何未来计划支持这一点?因为我计划为我的本地CMS自动登录,然后打开我的个人资料在页面上工作,这样我就可以从devtools@ebidel在运行给定的示例时,我总是遇到一个或其他错误,即使无法运行在本地计算机上成功运行的代码,很抱歉提出了这个愚蠢的问题。这个解决方案对我来说太完美了!很高兴知道
chrome://version/
给出确切的可执行路径!谢谢。是的,这个答案对我来说很有用,应该是公认的答案!哇!我认为我的设置有问题,阻止了我和chrome对决。事实证明,在我的.env文件中,我正在逃离Javascript不喜欢的空间……文档当前声明
puppeter.launch([options])
接受
executablePath
:运行Chrome或Chrome可执行文件的路径,而不是捆绑Chrome。链接:这个答案不准确。你可以用chrome,我刚刚测试过。