ConsoleMessage
ConsoleMessage 对象由 page 通过 Page.Console 事件派发。对于在 page 中记录的每个控制台消息,Playwright 上下文中都会有相应的事件。
// Listen for all console messages and print them to the standard output.
page.Console += (_, msg) => Console.WriteLine(msg.Text);
// Listen for all console messages and print errors to the standard output.
page.Console += (_, msg) =>
{
if ("error".Equals(msg.Type))
Console.WriteLine("Error text: " + msg.Text);
};
// Get the next console message
var waitForMessageTask = page.WaitForConsoleMessageAsync();
await page.EvaluateAsync("console.log('hello', 42, { foo: 'bar' });");
var message = await waitForMessageTask;
// Deconstruct console.log arguments
await message.Args.ElementAt(0).JsonValueAsync<string>(); // hello
await message.Args.ElementAt(1).JsonValueAsync<int>(); // 42
方法
参数
v1.9 之前添加传递给 console 函数调用的参数列表。另请参阅 Page.Console。
用法
ConsoleMessage.Args
返回
位置
v1.9 之前添加资源的 URL,后跟资源中的基于 0 的行号和列号,格式为 URL:line:column。
用法
ConsoleMessage.Location
返回
页面
新增于: v1.34生成此控制台消息的页面(如果有)。
用法
ConsoleMessage.Page
返回
文本
v1.9 之前添加控制台消息的文本。
用法
ConsoleMessage.Text
返回
类型
v1.9 之前添加以下值之一:'log'、'debug'、'info'、'error'、'warning'、'dir'、'dirxml'、'table'、'trace'、'clear'、'startGroup'、'startGroupCollapsed'、'endGroup'、'assert'、'profile'、'profileEnd'、'count'、'timeEnd'。
用法
ConsoleMessage.Type
返回
工作线程
Added in: v1.57产生此控制台消息的 web worker 或 service worker(如果存在)。请注意,来自 web worker 的控制台消息也有非空的 ConsoleMessage.Page。
用法
ConsoleMessage.Worker
返回