ConsoleMessage
ConsoleMessage 对象通过页面的 page.on("console") 事件分发。每当页面中有控制台消息被记录时,Playwright 上下文中都会有相应的事件。
- 同步
- 异步
# 监听所有控制台日志
page.on("console", lambda msg: print(msg.text))
# 监听所有控制台事件并处理错误
page.on("console", lambda msg: print(f"error: {msg.text}") if msg.type == "error" else None)
# 获取下一个控制台日志
with page.expect_console_message() as msg_info:
# 在页面内执行 console.log
page.evaluate("console.log('hello', 42, { foo: 'bar' })")
msg = msg_info.value
# 解构打印参数
msg.args[0].json_value() # hello
msg.args[1].json_value() # 42
# 监听所有控制台日志
page.on("console", lambda msg: print(msg.text))
# 监听所有控制台事件并处理错误
page.on("console", lambda msg: print(f"error: {msg.text}") if msg.type == "error" else None)
# 获取下一个控制台日志
async with page.expect_console_message() as msg_info:
# 在页面内执行 console.log
await page.evaluate("console.log('hello', 42, { foo: 'bar' })")
msg = await msg_info.value
# 解构打印参数
await msg.args[0].json_value() # hello
await msg.args[1].json_value() # 42
属性
args
v1.9 之前添加传递给 console
函数调用的参数列表。另见 page.on("console")。
用法
console_message.args
返回值
location
v1.9 之前添加用法
console_message.location
返回值
page
新增于: v1.34产生该控制台消息的页面(如果有)。
用法
console_message.page
返回值
text
v1.9 之前添加控制台消息的文本内容。
用法
console_message.text
返回值
type
v1.9 之前添加以下值之一:
'log'
、'debug'
、'info'
、'error'
、'warning'
、'dir'
、'dirxml'
、'table'
、'trace'
、'clear'
、'startGroup'
、'startGroupCollapsed'
、'endGroup'
、'assert'
、'profile'
、'profileEnd'
、'count'
、'timeEnd'
。
用法
console_message.type
返回值