Node.JS在命令行中检查Chrome浏览器是否安装并打开指定网址


Posted in Javascript onMay 21, 2019

使用Windows命令行cmd可以指定浏览器打开网址。在node.js中使用start即可:

比如分别用Chrome和IE打开网址

start chrome http://www.google.cn

start iexplore http://www.google.cn

但是当用户没有安装Chrome时使用start则会报错,并会弹出错误对话框:

[Window Title]

chrome

[Content]

Windows 找不到文件 'chrome'。请确定文件名是否正确后,再试一次。

如果不想弹出对话框,则需要事先检查Chrome是否安装。

Chrome默认安装位置为:

C:\Documents and Settings\{ USERNAME }\Local Settings\Application Data\Google\Chrome\Application

我们还需要借助os获取Windows当前登录的用户名,如果没有安装Chrome的话,则用IE打开,最终代码如下:

var fs     = require('fs')
var os     = require('os')
var cp     = require('child_process')
var path    = require('path')
var open = function(url) {
 var userInfo  = os.userInfo()
 var chromePath = path.join(userInfo.homedir, 'Local Settings\\Application Data\\Google\\Chrome\\Application\\chrome.exe')
 var openByIE  = function() {
  cp.exec('start iexplore ' + url, function(err, stdout, stderr) {
   if (err) {
    console.log(err)
   }
  })
 }
 fs.stat(chromePath, function(err) {
  if (err) {
   openByIE()
   return
  }
  cp.exec('start chrome2 ' + url, function(err, stdout, stderr) {
   if (err) {
    openByIE()
    return
   }
  })
 })
}

总结

以上所述是小编给大家介绍的Node.JS在命令行中检查Chrome浏览器是否安装并打开指定网址,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
使用JavaScript链式编程实现模拟Jquery函数
Dec 21 Javascript
js实现双击图片放大单击缩小的方法
Feb 17 Javascript
javascript正则表达式基础知识入门
Apr 20 Javascript
js中利用tagname和id获取元素的方法
Jan 03 Javascript
Js与Jq获取浏览器和对象值的方法
Mar 18 Javascript
js 自带的sort() 方法全面了解
Aug 16 Javascript
浅谈angular4生命周期钩子
Sep 05 Javascript
js Element Traversal规范中的元素遍历方法
Apr 19 Javascript
使用javascript做时间倒数读秒功能的实例
Jan 23 Javascript
vue权限问题的完美解决方案
May 08 Javascript
jQuery实现简单飞机大战
Jul 05 jQuery
原生JS运动实现轮播图
Jan 02 Javascript
taro开发微信小程序的实践
May 21 #Javascript
element-ui表格合并span-method的实现方法
May 21 #Javascript
详解关于表格合并span-method方法的补充(表格数据由后台动态返回)
May 21 #Javascript
浅谈React Native 传参的几种方式(小结)
May 21 #Javascript
JavaScript函数式编程(Functional Programming)声明式与命令式实例分析
May 21 #Javascript
JS判断数组里是否有重复元素的方法小结
May 21 #Javascript
JS计算两个数组的交集、差集、并集、补集(多种实现方式)
May 21 #Javascript
You might like
PHP编程之高级技巧——利用Mysql函数
2006/10/09 PHP
PHP foreach循环使用详解与实例代码
2010/05/08 PHP
php中使用gd库实现下载网页中所有图片
2015/05/12 PHP
php实现多维数组排序的方法示例
2017/03/23 PHP
如何通过View::first使用Laravel Blade的动态模板详解
2017/09/21 PHP
JSON PHP中,Json字符串反序列化成对象/数组的方法
2018/05/31 PHP
js Event对象的5种坐标
2011/09/12 Javascript
浅析javascript操作 cookie对象
2014/12/26 Javascript
jQuery实现验证年龄简单思路
2016/02/24 Javascript
jQuery如何防止Ajax重复提交
2016/10/14 Javascript
微信小程序 实现tabs选项卡效果实例代码
2016/10/31 Javascript
jQuery Easyui datagrid行内实现【添加】、【编辑】、【上移】、【下移】
2016/12/19 Javascript
Vue 父子组件的数据传递、修改和更新方法
2018/03/01 Javascript
Vue中对比scoped css和css module的区别
2018/05/17 Javascript
把项目从Python2.x移植到Python3.x的经验总结
2015/04/20 Python
Python2.x版本中cmp()方法的使用教程
2015/05/14 Python
详解Python中dict与set的使用
2015/08/10 Python
Python编程中的异常处理教程
2015/08/21 Python
pygame 精灵的行走及二段跳的实现方法(必看篇)
2017/07/10 Python
Python探索之静态方法和类方法的区别详解
2017/10/27 Python
TensorFlow 实战之实现卷积神经网络的实例讲解
2018/02/26 Python
windows下python安装小白入门教程
2018/09/18 Python
Pandas统计重复的列里面的值方法
2019/01/30 Python
Python常见数据类型转换操作示例
2019/05/08 Python
突袭HTML5之Javascript API扩展4—拖拽(Drag/Drop)概述
2013/01/31 HTML / CSS
HTML5新增form控件和表单属性实例代码详解
2019/05/15 HTML / CSS
澳大利亚百货商店中销量第一的商务衬衫品牌:Van Heusen
2018/07/26 全球购物
.net笔试题
2014/03/03 面试题
拉丁舞学习者的自我评价
2013/10/27 职场文书
幼儿园义卖活动方案
2014/01/17 职场文书
《孙权劝学》教学反思
2014/04/23 职场文书
我为党旗添光彩演讲稿
2014/09/13 职场文书
三年级学生评语大全
2014/12/26 职场文书
暂停营业通知
2015/04/25 职场文书
国庆节主题班会
2015/08/15 职场文书
2016年教师节慰问信
2015/12/01 职场文书