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

UWP环境下如何从HTML标签提取内容?求指定name的input值获取代码

UWP中通过name属性获取input的value值(无需第三方库)

嘿,作为UWP新手碰到这种第三方库冲突的问题确实挺闹心的!既然HTML Agility Pack导致了sockets.dll重复的构建错误,那咱们直接用UWP原生的Windows.Data.Html.Dom API来解决,完全不需要依赖第三方库,还能完美适配UWP环境。

下面是具体的实现步骤和代码:

  1. 首先引入必要的命名空间
    在你的代码文件顶部添加:

    using Windows.Data.Html.Dom;
    
  2. 编写核心代码获取input的value
    假设你已经有了包含目标input的HTML字符串(比如你提供的<input type="hidden" name="data" value="Hello">),可以这样处理:

    // 你的HTML内容
    string htmlContent = @"<input type=""hidden"" name=""data"" value=""Hello"">";
    string targetValue = string.Empty;
    
    try
    {
        // 将HTML字符串加载为HtmlDocument对象
        HtmlDocument htmlDoc = new HtmlDocument();
        htmlDoc.LoadHtml(htmlContent);
    
        // 通过name属性查找元素
        var elements = htmlDoc.GetElementsByName("data");
        if (elements.Count > 0)
        {
            // 获取第一个匹配元素的value属性值
            targetValue = elements[0].GetAttribute("value");
        }
    
        // 输出结果,此时targetValue应该是"Hello"
        System.Diagnostics.Debug.WriteLine(targetValue);
    }
    catch (Exception ex)
    {
        // 处理可能的异常,比如HTML格式错误等
        System.Diagnostics.Debug.WriteLine($"处理HTML时出错:{ex.Message}");
    }
    
  3. 代码说明

    • HtmlDocument是UWP原生提供的HTML解析类,专门用于处理HTML内容,不需要额外安装任何NuGet包。
    • GetElementsByName方法会返回所有匹配指定name属性的元素集合,我们只需要取第一个(因为通常name属性在表单里是唯一的)。
    • 加入了异常处理和空值判断,避免因为HTML格式问题或者找不到元素导致程序崩溃。

这个方法完全避开了第三方库的依赖,也就不会出现sockets.dll重复的构建错误了,对你这个UWP新手来说也更友好,不需要折腾第三方库的兼容问题~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 07:10:33