繁体   English   中英

Selenium Python:traceback.format_exc()错误

[英]Selenium Python: traceback.format_exc() error

Selenium Python: traceback.format_exc()错误:(对不起,我是Python的新手,在处理对象和方法方面很麻烦)

这是命令行错误:

Line ## in LogErrorDetials
LogErrorMessage = LogErrorMessage + "\n\n" + traceback.format_exc()
  File "C:\Python34\lib\traceback.py", line 256, in format_exc
return "".join(format_exception(*sys.exc_info(), limit=limit, chain=chain))
  File "C:\Python34\lib\traceback.py", line 181, in format_exception
return list(_format_exception_iter(etype, value, tb, limit, chain))
  File "C:\Python34\lib\traceback.py", line 146, in _format_exception_iter
for value, tb in values:
  File "C:\Python34\lib\traceback.py", line 125, in _iter_chain
context = exc.__context__

AttributeError: 'NoneType' object has no attribute '__context__'

令人反感的行:

LogErrorMessage = LogErrorMessage + "\n\n" + traceback.format_exc()

如何在调用traceback.format_exc()之前检查其是否可以正常工作,或者如何检查__context__不是NoneType的属性(如果更好)?

这似乎是-Issue 23003 它说 -

此回归是在Python 3.0中引入的。

我认为这在Python 3.4中已解决(根据问题页面)。 我看不到那里指定的任何解决方法。

您可以尝试使用sys.exc_info()获取异常,然后将其传递给traceback.format_exception() -

a = sys.exc_info()
traceback.format_exception(*a)

请注意, traceback.format_exception()返回一个列表,将其转换为字符串,请使用-

''.join(traceback.format_exception(*a))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM