【发布时间】:2010-12-06 00:45:51
【问题描述】:
我认为我需要知道运行哪个神奇的命令行或 OSA 脚本程序来启动现有 Firefox 浏览器中的 URL(如果正在运行),或者如果没有运行 Firefox,也启动 Firefox .在 Mac 上。
我正在测试一个 Python 程序 (Crunchy Python),它设置了一个 Web 服务器,然后使用 Firefox 作为前端。它使用以下内容启动 Web 应用程序:
try:
client = webbrowser.get("firefox")
client.open(url)
return
except:
try:
client = webbrowser.get()
client.open(url)
return
except:
print('Please open %s in Firefox.' % url)
我的 Mac 上默认安装了 Safari,但我也安装并运行了 Firefox。上面的代码在 Safari 中启动了新的 URL(在 localhost 上)。 Crunchy 在 Safari 中效果不佳。我想在 Firefox 中看到它,因为我有 Firefox。在 Python 2.5、2.6 和 2.7(来自版本控制)下,我得到了这个:
>>> import webbrowser
>>> webbrowser.get("firefox")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/webbrowser.py", line 46, in get
raise Error("could not locate runnable browser")
webbrowser.Error: could not locate runnable browser
火狐就在那里。我尝试使用 webbrowser.get("/Applications/Firefox.app/Contents/MacOS/firefox %s") 启动一个新的 Firefox 实例,然后抱怨另一个 Firefox 实例已经在运行。
我真的希望 webbrowser 在 Firefox 的现有选项卡/窗口中打开 URL,如果它已经在运行,或者在新的 Firefox 中没有运行。
我查看了 webbrowser.py,看起来 MacOSX 没有“firefox”支持。没关系,我可以补充。但是我不知道如何以我想要的方式在Firefox中打开URL。
想法?现在,我可以强制 Crunchy 给我 URL,我可以手动将其粘贴到 Firefox 中。
【问题讨论】:
标签: python macos firefox browser