Node.JS在命令行中检查Chrome浏览器是否安装并打开指定网址
使用Windows命令行cmd可以指定浏览器打开网址。在node.js中使用start即可:
比如分别用Chrome和IE打开网址
startchromehttp://www.google.cn
startiexplorehttp://www.google.cn
但是当用户没有安装Chrome时使用start则会报错,并会弹出错误对话框:
[WindowTitle]
chrome
[Content]
Windows找不到文件'chrome'。请确定文件名是否正确后,再试一次。
如果不想弹出对话框,则需要事先检查Chrome是否安装。
Chrome默认安装位置为:
C:\DocumentsandSettings\{USERNAME}\LocalSettings\ApplicationData\Google\Chrome\Application
我们还需要借助os获取Windows当前登录的用户名,如果没有安装Chrome的话,则用IE打开,最终代码如下:
varfs=require('fs') varos=require('os') varcp=require('child_process') varpath=require('path') varopen=function(url){ varuserInfo=os.userInfo() varchromePath=path.join(userInfo.homedir,'LocalSettings\\ApplicationData\\Google\\Chrome\\Application\\chrome.exe') varopenByIE=function(){ cp.exec('startiexplore'+url,function(err,stdout,stderr){ if(err){ console.log(err) } }) } fs.stat(chromePath,function(err){ if(err){ openByIE() return } cp.exec('startchrome2'+url,function(err,stdout,stderr){ if(err){ openByIE() return } }) }) }
总结
以上所述是小编给大家介绍的Node.JS在命令行中检查Chrome浏览器是否安装并打开指定网址,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!