我有一个使用...
显示的html页面cherrypy.quickstart(ShowHTML(htmlfile), config=configfile)
一旦页面加载(例如,通过命令'python mypage.py'启动),我想自动启动浏览器以显示页面(例如,通过。http://localhost/8000)。有什么方法可以实现这个目标(例如,通过CherryPy中的钩子),或者我是否必须手动调用浏览器(例如双击图标)?
TIA 艾伦
答案 0 :(得分:4)
您可以将webbrowser挂钩到引擎启动/停止生命周期:
def browse():
webbrowser.open("http://127.0.0.1:8080")
cherrypy.engine.subscribe('start', browse, priority=90)
或者,解压快速启动:
from cherrypy import config, engine, tree
config.update(configfile)
tree.mount(ShowHTML(htmlfile), '/', configfile)
if hasattr(engine, "signal_handler"):
engine.signal_handler.subscribe()
if hasattr(engine, "console_control_handler"):
engine.console_control_handler.subscribe()
engine.start()
webbrowser.open("http://127.0.0.1:8080")
engine.block()