当前位置: 首页 > 编程笔记 >

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

广绪
2023-03-14
本文向大家介绍Node.JS在命令行中检查Chrome浏览器是否安装并打开指定网址,包括了Node.JS在命令行中检查Chrome浏览器是否安装并打开指定网址的使用技巧和注意事项,需要的朋友参考一下

使用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浏览器是否安装并打开指定网址,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

 类似资料:
  • 问题内容: 有没有一种简单的方法来检测XMLHttpRequest在浏览器窗口中是否处于活动状态?还是有多少活跃?即。有没有一种方法可以检测我的浏览器窗口中是否有活动的AJAX调用? 问题的扩展: 使用javascript有没有办法查看是否打开了XMLHttpRequests?例如“ window.XMLisActive()”或类似的东西? 解决方案:最终为XMLHttpRequest写一个包装器

  • 我有一台带OS X 10.8.2的macbook pro。XCode已安装。我知道它出现在应用程序目录中。在/usr/bin中还有xcode build和xcode select文件,我需要知道是否安装了命令行工具。有命令吗?如何查看是否安装了XCode CLT,如果是,如何查找已安装的版本?

  • 我的chrome浏览器在Selenium Webdriver中没有打开。根据兼容性,我已经下载了所有的东西,如chrome driver,Selenium jars和chrome。我使用的是Intellij IDEA IDE。代码和版本细节如下- 版本: Chrome:89.0.4389.90 IDE:IntelliJ IDE:203.7148.57 Chrome驱动程序:https://chro

  • 问题内容: 为了在默认浏览器中打开给定的URL,我们必须在Linux(不同的公共发行版)上执行(从Java,但这无关紧要)什么命令? 问题答案: 最交叉分布的是

  • 我的代码没有启动浏览器。 项目显示运行了很长时间,但什么也没有发生。我按下print,发现没有执行。 我添加了manifest_vesion,但在每次运行中,它都生成一个新文件,而我再次得到相同的错误。

  • 问题内容: 我想检查浏览器是否仍然存在,如果不存在,那么我想打开一个新的浏览器!网络驱动程序中是否有可用的api来检查浏览器是否仍然存在? 问题答案: 调用后,将driver的值设置为 但是,如果调用,它将驱动程序的值设置为 因此,如果您在调用 driver.quit() 之后检查浏览器窗口,则可以通过以下实现知道。