我有一个非常具体的问题。 我试图找到一种在我的应用程序中嵌入HTML浏览器的方法,以便显示包含javascript的一些生成的HTML内容。
我尝试用wx.html2来做,但javascript部分似乎无法正常工作。 所以我决定尝试一下CEFPython,举例说明提供的wxPython.py演示。
起初,它在我设计的用户界面中运行良好。
但问题是,这个UI旨在从另一个应用程序调用,作为一种插件用户界面"。当从这个应用程序启动我的wxPython UI时,一旦cef被初始化它就会崩溃(通过:
sys.excepthook = cef.ExceptHook
settings = {
"debug": True,
"log_severity": cef.LOGSEVERITY_INFO,
"log_file": "debug.log",
}
cef.Initialize(settings=settings)
app = CefApp(False)
app.MainLoop()
del app
cef.Shutdown()
我一直收到这个错误:
Python exception: AttributeError
'module' object has no attribute 'argv'
Traceback (most recent call last):
File "<string>", line 248, in <module>
File "<string>", line 36, in main
File "cefpython_py27.pyx", line 626, in cefpython_py27.Initialize
(cefpython_py27.cpp:99136)
AttributeError: 'module' object has no attribute 'argv'
所以最后我有两个问题:
请原谅我的英语错误,因为我不是本地人。
答案 0 :(得分:1)
您的Python环境似乎没有以标准方式运行,您没有提供详细信息如何调用您的Python代码。
cefpython中的错误会抛出此行:
if "--debug" in sys.argv:
application_settings["debug"] = True
你必须找出你的Python没有定义“sys.argv”的原因。在调用sys.argv = []
之前,您可以使用以下代码轻松解决此问题:cef.Initialize,
但是由于您的非标准Python环境,您可能仍会遇到其他问题。