You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Playwright for .NET中获取定位器的URL属性?

在.NET Playwright中获取链接Href的正确方式

你遇到的编译错误是因为误用了JavaScript风格的方法命名,且忽略了.NET Playwright的异步API规范。.NET版Playwright遵循C#的命名约定,且大部分DOM操作方法为异步实现,以下是修正后的代码:

正确代码示例

var collectionOfLinks = await Page.GetByRole(Microsoft.Playwright.AriaRole.Link).AllAsync();
// 推荐使用foreach循环替代for循环,代码更简洁
foreach (var link in collectionOfLinks)
{
    // 使用异步方法GetAttributeAsync获取href属性,需加await关键字
    var linkUrl = await link.GetAttributeAsync("href");
    // 在这里处理链接,比如打印、验证等
    Console.WriteLine(linkUrl);
}

关键说明

  • .NET Playwright的IElementHandle接口中,获取元素属性的正确方法是**GetAttributeAsync(string name)**,必须通过await等待异步操作完成
  • 如果你需要将相对路径转换为绝对URL,可以结合当前页面URL进行拼接:
    var absoluteUrl = new Uri(new Uri(Page.Url), linkUrl).ToString();
    
  • 你之前尝试的getAttribute、getHref均为JavaScript环境下的写法,不符合.NET版Playwright的API规范,因此会编译失败

内容的提问来源于stack exchange,提问作者Cranky Dragon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 01:01:02