代码模式下打开浏览器的一些方法汇总

一、使用 subprocess 模块

这个模块融合了 os.system 以及函数 execv 和 popen 的功能。这些都是用于运行外部程序的,其中前一个函数退出 Python 解释器,并将控制权交给被执行的程序;而后者创建一个到程序的连接(这个连接类似于文件)。
示例代码:

import subprocess

subprocess.Popen(path)

其中 path 为需要运行的浏览器所在的路径,这也是 RPA 设计器中打开网站所调用的代码。

二、使用 os 模块的 system 函数

示例代码:

import os

os.system(r'C:\"Program Files (x86)"\"Internet Explorer"\iexplorer.exe')

注意,这里有两个位置用双引号括起来了,如果不这样做,底层 shell 将受阻于空白处。另外,这里必须使用反斜杠,因为 Windows shell 无法识别斜杠。不过这个命令执行后当前 Python 程序会一直等待直到命令 os.system 结束。

三、使用 os 模块的 startfile 函数

这个函数很适合用于完成打开文件的任务,并且也是 Windows 特有的函数。
示例代码:

import os

os.startfile(r'C:\Program Files (x86)\Internet Explorer\iexplorer.exe')

这个函数无须像 os.system 那样用引号将文件路径中含有空格的地方括起,并且运行后不会等待命令结束,而是会继续运行之后的代码。

四、更佳的解决方案:webbrowser

就启动浏览器这项任务而言,使用模块 webbrowser 是一种更佳的解决方案。这个模块包含一个名为 open 的函数,这能够启动浏览器并打开指定的 URL。
示例代码:

import webbrowser

webbrowser.open('http://www.baidu.com')