我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

需求:特定时机下自动通过浏览器访问某网站,本文描述如何通过代码的方式打开浏览器,并打开指定的网站。本文采用了两种方式实现这个需求,一个是通过.bat文件的方式,另外一个是通过nodejs的第三方代码opn来打开浏览器。

苏南大叔:bat文件如何打开浏览器,nodejs如何打开浏览器? - browser-open
bat文件如何打开浏览器,nodejs如何打开浏览器?(图3-1)

大家好,这里是苏南大叔的“程序如此灵动”博客,这里讲述苏南大叔和计算机代码的故事。本文讲述通过两种常见的方式,如何利用代码打开浏览器,并打开特定网站。本文测试环境:win10node@16.14.2npm@8.3.0opn@6.0.0

通过bat文件【不推荐】

通过bat文件打开,其实就是执行命令行打开,命令如下:

explorer https://newsn.net/

苏南大叔:bat文件如何打开浏览器,nodejs如何打开浏览器? - bat-explorer
bat文件如何打开浏览器,nodejs如何打开浏览器?(图3-2)

.bat文件如下:

cd /d %~dp0
explorer https://newsn.net/

这里的第一句话cd /d %~dp0,其实是保证当前的工作目录。比如:如果下一条语句不是explorer的话,而是执行当前目录下面的的某个命令的话,比如npm run。这个时候,保证当前目录就显得额外重要。

通过nodejs(opn)代码【推荐】

这里使用了一个opn的第三方代码,安装的方式如下:

npm i opn --save

截至到发稿,opn的最新版本是6.0.0。官方地址:

苏南大叔:bat文件如何打开浏览器,nodejs如何打开浏览器? - nodejs打开文章
bat文件如何打开浏览器,nodejs如何打开浏览器?(图3-3)

使用方式,非常简单:

const open = require("opn");
open("http://127.0.0.1:5601/")

还可以指定浏览器,不过个人觉得还是使用默认的浏览器比较好。下面的是更多高级用法范例:

const open = require('open');

// Opens the image in the default image viewer and waits for the opened app to quit.
await open('unicorn.png', {wait: true});
console.log('The image viewer app quit');

// Opens the URL in the default browser.
await open('https://newsn.net');

// Opens the URL in a specified browser.
await open('https://newsn.net', {app: {name: 'firefox'}});

// Specify app arguments.
await open('https://newsn.net', {app: {name: 'google chrome', arguments: ['--incognito']}});

// Open an app
await open.openApp('xcode');

// Open an app with arguments
await open.openApp(open.apps.chrome, {arguments: ['--incognito']});

参考文档

综述

网络上类似的代码很多,大家选择一个自己喜欢的用就好。如果两者来选一个方案的话,对于打开浏览器这件事情来说,使用nodejs的方式比较好,因为不会被数字公司的软件拦截,而.bat文件是会被拦截的。

更多node的文章,请点击:

助理微信

微信打赏码

微信公众号

微信小程序

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   node    npm