如何从htmlagilitypack中的节点访问子节点

2024-06-06

<html>
    <body>
        <div class="main">
            <div class="submain"><h2></h2><p></p><ul></ul>
            </div>
            <div class="submain"><h2></h2><p></p><ul></ul>
            </div>
        </div>
    </body>
</html>

我将 html 加载到HtmlDocument。然后我选择 XPath 作为submain。然后我不知道如何访问每个标签,即h2, p分别地。

HtmlAgilityPack.HtmlNodeCollection nodes = doc.DocumentNode.SelectNodes("//div[@class=\"submain\"]");
foreach (HtmlAgilityPack.HtmlNode node in nodes) {}

如果我使用node.InnerText我收到了所有的文字InnerHtml也没什么用。如何选择单独的标签?


以下内容会有所帮助:

HtmlAgilityPack.HtmlNodeCollection nodes = doc.DocumentNode.SelectNodes("//div[@class=\"submain\"]");
foreach (HtmlAgilityPack.HtmlNode node in nodes) {
    //Do you say you want to access to <h2>, <p> here?
    //You can do:
    HtmlNode h2Node = node.SelectSingleNode("./h2"); //That will get the first <h2> node
    HtmlNode allH2Nodes= node.SelectNodes(".//h2"); //That will search in depth too

    //And you can also take a look at the children, without using XPath (like in a tree):        
    HtmlNode h2Node = node.ChildNodes["h2"];
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从htmlagilitypack中的节点访问子节点 的相关文章

  • 在 C# 中创建具有单独列的分隔文本

    我一直在尝试在 C 中创建一个制表符限制的文本文件 以便数据正确显示在单独的列中 Firstname Lastname Age John Smith 17 James Sawyer 31 我尝试过 t 字符 但我得到的只是 Firstnam
  • 启动时出现 OData v4 错误:找不到段“Whatever”的资源

    我正在构建新的 v4 服务 一切进展顺利 直到我为新模型 实体添加了新控制器 并在启动站点进行测试运行时收到此错误 控制器似乎编码正确 就像其他控制器一样 控制器 CustomersOData 中的操作 GetFeed 上的路径模板 Cus
  • 推导指南中的引用和值之间的差异

    考虑类型A template
  • 如何为 C 分配的 numpy 数组注册析构函数?

    我想在 C C 中为 numpy 数组分配数字 并将它们作为 numpy 数组传递给 python 我可以做的PyArray SimpleNewFromData http docs scipy org doc numpy reference
  • 如何修复此错误“GDI+ 中发生一般错误”?

    从默认名称打开图像并以默认名称保存 覆盖它 我需要从 Image Default jpg 制作图形 将其放在 picturebox1 image 上并在 picurebox1 上绘制一些图形 它有效 这不是我的问题 但我无法保存 pictu
  • 读取文件特定行号的有效方法。 (奖励:Python 手册印刷错误)

    我有一个 100 GB 的文本文件 它是来自数据库的 BCP 转储 当我尝试导入它时BULK INSERT 我在第 219506324 行上收到一个神秘错误 在解决此问题之前 我想看看这一行 但可惜的是我最喜欢的方法 import line
  • 如何访问另一个窗体上的ListView控件

    当单击与 ListView 所在表单不同的表单中的按钮时 我试图填充 ListView 我在 Form1 中创建了一个方法以在 Form2 中使用 并将参数传递给 Form1 中的方法 然后填充 ListView 当我调试时 我得到了传递的
  • 如何在 Linq 中获得左外连接?

    我的数据库中有两个表 如下所示 顾客 C ID city 1 Dhaka 2 New york 3 London 个人信息 P ID C ID Field value 1 1 First Name Nasir 2 1 Last Name U
  • 使用 JNI 从 Java 代码中检索 String 值的内存泄漏

    我使用 GetStringUTFChars 从使用 JNI 的 java 代码中检索字符串的值 并使用 ReleaseStringUTFChars 释放该字符串 当代码在 JRE 1 4 上运行时 不会出现内存泄漏 但如果相同的代码在 JR
  • 在一个字节中存储 4 个不同的值

    我有一个任务要做 但我不知道从哪里开始 我不期待也绝对不想要代码中的答案 我想要一些关于该怎么做的指导 因为我感到有点失落 将变量打包和解包到一个字节中 您需要在一个字节中存储 4 个不同的值 这些值为 NAME RANGE BITS en
  • C++:.bmp 到文件中的字节数组

    是的 我已经解决了与此相关的其他问题 但我发现它们没有太大帮助 他们提供了一些帮助 但我仍然有点困惑 所以这是我需要做的 我们有一个 132x65 的屏幕 我有一个 132x65 的 bmp 我想遍历 bmp 并将其分成小的 1x8 列以获
  • 批量更新 SQL Server C#

    我有一个 270k 行的数据库 带有主键mid和一个名为value 我有一个包含中值和值的文本文件 现在我想更新表格 以便将每个值分配给正确的中间值 我当前的方法是从 C 读取文本文件 并为我读取的每一行更新表中的一行 必须有更快的方法来做
  • 如何使用 Mongodb C# 驱动程序连接多个集合

    我需要将 3 个集合与多个集合合并在一起 lookup我在 C 驱动程序中尝试过 它允许我 lookup用户采集但无法执行秒 lookup用于设置集合 有人可以帮忙吗 db Transactions aggregate lookup fro
  • 等待线程完成

    private void button1 Click object sender EventArgs e for int i 0 i lt 15 i Thread nova new Thread Method nova Start list
  • HttpWebRequest 在第二次调用时超时

    为什么以下代码在第二次 及后续 运行时超时 代码挂在 using Stream objStream request GetResponse GetResponseStream 然后引发 WebException 表示请求已超时 我已经尝试过
  • 如何对 Web Api 操作进行后调用?

    我创建了一个 Web API 操作 如下所示 HttpPost public void Load string siteName string providerName UserDetails userDetails implementat
  • (de)从 CSV 序列化为对象(或者最好是类型对象的列表)

    我是一名 C 程序员 试图学习 C 似乎有一些内置的对象序列化 但我在这里有点不知所措 我被要求将测试数据从 CSV 文件加载到对象集合中 CSV 比 xml 更受青睐 因为它更简单且更易于人类阅读 我们正在创建测试数据来运行单元测试 该集
  • 用于 C# 的 TripleDES IV?

    所以当我说这样的话 TripleDES tripledes TripleDES Create Rfc2898DeriveBytes pdb new Rfc2898DeriveBytes password plain tripledes Ke
  • 使用 GhostScript.NET 打印 PDF DPI 打印问题

    我在用GhostScript NET http ghostscriptnet codeplex com打印 PDF 当我以 96DPI 打印时 PDF 打印效果很好 但有点模糊 如果我尝试以 600DPI 打印文档 打印的页面会被极大地放大
  • 防止在工厂方法之外实例化对象

    假设我有一个带有工厂方法的类 class A public static A newA Some code logging return new A 是否可以使用 a 来阻止此类对象的实例化new 那么工厂方法是创建对象实例的唯一方法吗 当

随机推荐

  • 如果使用键盘,如何捕获 TimePicker 中的时间变化?

    我有一个小部件 它是一个 TimePicker 用于检索数据库字段中保存的时间 问题是 当用户更改小部件中的时间值时 这不会保存在数据库中 所以我遇到了setOnTimeChangedListener如果您只在小部件中使用加号和减号 那么该
  • 如何使用 datatables.js 应用条件格式?

    我有一个使用 datatables js 的 html 表 但无法找到如何应用条件格式的清晰示例 当第 4 列中的单元格的值 0 并且第 5 列中的值为 0 时 如何更改该单元格的文本颜色
  • MySQL Workbench 深色主题

    我刚刚开始学习 SQL 课程 并且一直在尝试不同的 GUI 我喜欢使用 MySQL Workbench 但白色背景刺瞎了我的眼睛 我已经搜索并找到了一些其他讨论编辑 xml 文件的相关帖子 我尝试用几种不同的方式对其进行编辑 但无济于事 我
  • 使用 Google Apps 脚本从 Firebase 读取数据

    因此 正如标题所示 我目前正在解决一个相当麻烦的问题 这是场景 我有一个 Google 电子表格 其中包含一个包含姓名 电子邮件和到期日期的模板 但是 它不包含实际数据 数据本身位于 Firebase 中并且不断变化 那么 我的目标是让sc
  • 如何停止本地主机上的 RabbitMQ 服务器

    我在 OS X 上安装了 RabbitMQ 服务器 并在命令行上启动它 现在 我应该如何阻止它运行还不清楚 我这样做之后 sudo rabbitmq server detached I get Activating RabbitMQ plu
  • 如何使用 Entity Framework 和 Moq 进行单元测试?

    我是 Moq 新手 希望将其用作数据后备存储 但不接触实时数据库 我的设置如下 UnitOfWork 包含所有存储库 并用于整个应用程序中的数据访问 Repository 代表 DbSet 的直接挂钩 由 DbContext 提供 DbCo
  • 矩阵相加的时间复杂度

    我很难解决有关矩阵求和的算法问题 我正在努力解决的问题如下 存在一个由任意值初始化的 N N 矩阵 A 给定 5 个值 R1 R2 C1 C2 和 V 有如下程序 1 R1 R2 C1 C2 N 个整数 V 实数 for k 1 to N
  • 为什么我收到保存错误、软盘错误的消息?

    我最近更新了 R 和 R studio 当我尝试保存文件时 收到一条错误消息 保存 文件名 时出错 驱动器中的软盘错误 将 2 卷序列号 3 插入驱动器 1 这是第一次看到这个错误信息 不知道该怎么办 我也无法 另存为 感谢您的帮助 尝试使
  • django render_to_string 缺少信息

    为什么我的电子邮件 正文部分 不包含该消息 这是我的代码 message render to string contact template txt contact name contact name contact email conta
  • 这段 jquery 代码可以写得更短吗? (初学者)

    这是我第一次在 stackoverflow 上提问 所以如果我做错了什么请原谅我 我也是 jquery 的新手 但通过阅读和教程 我设法创建了一个工作示例 下面的代码是我创建的 这意味着我有三个带有可拖动需求的列表和三个可以删除需求的占位符
  • 关于pl/sql异常的问题

    以下文字摘录自oracle文档Oracle Database PL SQL 语言参考 11g 第 1 版 11 1 未处理的异常也会影响 子程序 如果退出子程序 成功后 PL SQL 将值分配给 输出参数 但是 如果您退出 带有未处理的异常
  • 如何在 Android 中签署 AAR Artifacts?

    我目前正在开发一个 AAR android 库 我想用我自己的密钥对已发布的工件进行签名 以便我可以确定我是否发布了具有相同名称和功能的假 aar 注意事项1 我希望能够以编程方式检查我的库的真实性 即使是一个伪造的库 只是伪造了我的 aa
  • 底部导航视图 - 渐变图标色调

    I have changed icon tint in BottomNavigationView using selector and gradient color as tint when icon is pressed but inst
  • socket.io 自动断开套接字

    当我在电子中运行 socket io 时 我不断在开发者控制台中收到此错误 engine io client socket probe transport websocket failed because of error transpor
  • TableModel setCellEditable 并自动将值设置回 false

    我目前正在尝试在 JTable 中实现 JPopupMenu 它允许解锁单元格以进行编辑 Override public void actionPerformed ActionEvent e if e getActionCommand Un
  • 刷新访问令牌时出现“invalid_grant”错误的情况?

    最近我一直在为这个问题揪心 一些背景 使用oauth2客户端 https code google com p google api python client 库来管理用户的令牌 这些令牌用于定期并发执行各种后台任务 每次要为用户运行其中一
  • 是否有任何理由使用 ZoneId.of("UTC") 而不是 ZoneOffset.UTC ?

    有什么理由使用ZoneId of UTC 代替ZoneOffset UTC 我们知道两者之间的区别 如ZoneOffset UTC 和 ZoneId of UTC 之间有什么区别 https stackoverflow com questi
  • 如何在 Azure 仪表板中获取声纳门状态

    有人可以帮助我如何在 Azure 仪表板中获取声纳门状态作为小部件吗 Azure 市场中有一个名为 质量门 的小部件 但它不起作用 是否有可能在 Azure 仪表板中拥有此仪表板 SQ 项目概述页面的右下角有一个标有 获取项目徽章 的按钮
  • UWP - 访问 ProductListing.CurrencyCode 时出现 InvalidCastException

    我面临着一个非常奇怪的问题 我需要存储CurrencyCode的财产ProductListingWSA 10 0 环境中的项目 这是代码 foreach ProductListing product in listings ProductL
  • 如何从htmlagilitypack中的节点访问子节点

    div class main div class submain h2 h2 p p ul ul div div class submain h2 h2 p p ul ul div div 我将 html 加载到HtmlDocument 然