代码模式下打开浏览器的一些方法汇总
一、使用 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')
👏