Node.JS在命令行中檢查Chrome瀏覽器是否安裝并打開(kāi)指定網(wǎng)址
使用Windows命令行cmd可以指定瀏覽器打開(kāi)網(wǎng)址。在node.js中使用start即可:
比如分別用Chrome和IE打開(kāi)網(wǎng)址
start chrome http://www.google.cn
start iexplore http://www.google.cn
但是當(dāng)用戶沒(méi)有安裝Chrome時(shí)使用start則會(huì)報(bào)錯(cuò),并會(huì)彈出錯(cuò)誤對(duì)話框:
[Window Title]
chrome
[Content]
Windows 找不到文件 'chrome'。請(qǐng)確定文件名是否正確后,再試一次。
如果不想彈出對(duì)話框,則需要事先檢查Chrome是否安裝。
Chrome默認(rèn)安裝位置為:
C:\Documents and Settings\{ USERNAME }\Local Settings\Application Data\Google\Chrome\Application
我們還需要借助os獲取Windows當(dāng)前登錄的用戶名,如果沒(méi)有安裝Chrome的話,則用IE打開(kāi),最終代碼如下:
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
}
})
})
}
總結(jié)
以上所述是小編給大家介紹的Node.JS在命令行中檢查Chrome瀏覽器是否安裝并打開(kāi)指定網(wǎng)址,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
相關(guān)文章
從零開(kāi)始學(xué)習(xí)Node.js系列教程四:多頁(yè)面實(shí)現(xiàn)數(shù)學(xué)運(yùn)算的client端和server端示例
這篇文章主要介紹了Node.js多頁(yè)面實(shí)現(xiàn)數(shù)學(xué)運(yùn)算的client端和server端,結(jié)合具體實(shí)例形式分析了nodejs客戶端提交與服務(wù)端處理實(shí)現(xiàn)數(shù)學(xué)運(yùn)算的相關(guān)操作技巧,需要的朋友可以參考下2017-04-04
使用puppeteer破解極驗(yàn)的滑動(dòng)驗(yàn)證碼
這篇文章主要介紹了利用puppeteer破解極驗(yàn)的滑動(dòng)驗(yàn)證功能,基本流程代碼實(shí)現(xiàn)給大家介紹的非常詳細(xì),需要的朋友可以參考下2018-02-02
解決Node.js使用MySQL出現(xiàn)connect ECONNREFUSED 127.0.0.1:3306的問(wèn)題
這篇文章主要介紹了解決Node.js使用MySQL出現(xiàn)connect ECONNREFUSED 127.0.0.1:3306報(bào)錯(cuò)的相關(guān)資料,文中將問(wèn)題描述的很清楚,解決的方法也介紹的很完整,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-03-03
nodejs使用Sequelize框架操作數(shù)據(jù)庫(kù)的實(shí)現(xiàn)
這篇文章主要介紹了nodejs使用Sequelize框架操作數(shù)據(jù)庫(kù)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
利用node.js實(shí)現(xiàn)反向代理的方法詳解
在實(shí)際工程開(kāi)發(fā)中,會(huì)有前后端分離的需求。為了平滑的完成前端請(qǐng)求到后端各個(gè)獨(dú)立服務(wù),需要一個(gè)中間件實(shí)現(xiàn)請(qǐng)求轉(zhuǎn)發(fā)的功能,利用Nginx可以實(shí)現(xiàn),在這里使用nodejs實(shí)現(xiàn)一個(gè)反向代理服務(wù)器。本文主要介紹了關(guān)于利用node.js實(shí)現(xiàn)反向代理的相關(guān)資料,需要的朋友可以參考下。2017-07-07
NodeJS前端自動(dòng)化部署實(shí)現(xiàn)實(shí)例詳解
這篇文章主要為大家介紹了NodeJS前端自動(dòng)化部署實(shí)現(xiàn)實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10

