问题标签 [html-agility-pack]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - HTML 到 XHTML WebBrowser 控件
我一直在编辑模式下使用 .NET WebBrowser 控件作为最终用户创建 HTML 内容部分以插入各种网站的界面的一部分。他们有一个非常精简的可用标签列表,例如<p>, <br>, <a href>, <strong>, <ul> <li>...
他们无法在标签顶部应用任何格式,因为这是由特定网页 css 确定的。到目前为止,该系统一直运行良好。
不幸的是,我现在需要将 xhtml 放入更大的 xml 文档中,以供各种其他网站进行聚合。WebBrowsers 的主要问题似乎是它产生的列表:
是否有一个好的转换器库来解决这个问题,或者我可以强制 WebBrowser 控件创建 XHTML?我已经尝试过 HTMLAgilityPack,但它通过执行以下操作转换为 XHTML:
我认为他的设置不正确,因为标签应该在每个项目的末尾,尽管它会通过 xhtml 验证。如果没问题,当 XML 最终放入任何网站时,我最终会在某些浏览器上出现渲染问题吗?
c# - HTML 敏捷包
我想使用 html 敏捷包解析 html 表。我只想从表中提取一些预定义的列数据。
但我是解析和 html 敏捷包的新手,我已经尝试过,但我不知道如何使用 html 敏捷包来满足我的需要。
如果有人知道,请尽可能给我一个例子
编辑 :
如果我们只想提取决定的列名的数据,是否可以解析 html 表?就像有 4 列名称、地址、phno 一样,我只想提取名称和地址数据。
html-agility-pack - HTMLAgilityPack ChildNodes 索引有效,命名节点无效
我正在使用 HTMLAgilityPack 解析 XML API 响应。我可以从 API 调用中选择结果项。然后我遍历这些项目并希望将 ChildNodes 写入表。当我通过以下方式选择 ChildNodes 时:
我得到了正确的 itemId 结果。但是当我尝试时:
我得到“引用的对象的值为‘Nothing’。”
我尝试过“itemID[1]”、“/itemId[1]”和一系列字符串。我已经尝试过 SelectSingleNode 和 ChildNodes.Item("itemId").innertext。唯一有效的是使用索引。
使用索引的问题在于,有时结果中会省略子元素,从而导致索引失效。
有人知道我在做什么错吗?
c# - HTML 敏捷包
我在一个网页中有 html 表格,例如
现在从这个网页使用 html 敏捷包我想提取列地址和电话号码的数据。这意味着我首先找到了哪个表中有列地址和电话号码。找到该表后我想提取该列地址和电话号码的数据我该怎么办?
我可以拿到桌子。但是在那之后我应该做什么我不明白。
还有一件事:我们可以通过列名从表中提取数据是可行的。
c# - 正则表达式仅替换 HTML 标记中的引号
我有以下字符串:
我想使用正则表达式返回以下内容:
注意 div 中的 id 属性现在是如何被撇号包围的?
我怎样才能用正则表达式做到这一点?
编辑:我不是在寻找一种灵丹妙药来处理每种情况下的每种边缘情况。我们都应该厌倦使用正则表达式来解析 HTML,但是,在这种特殊情况下和我的特殊需要,正则表达式是解决方案......我只需要一些帮助来获得正确的表达式。
编辑 #2: Jens 帮助我找到了解决方案,但任何随机访问此页面的人都应该仔细考虑如何使用此解决方案。就我而言,它有效,因为我对我将要处理的字符串类型非常有信心。我知道危险和风险,并确保你这样做。如果你不确定你是否知道,那么它可能表明你不知道并且不应该使用这种方法。你已经被警告过了。
c# - 使用 Html Agility Pack 获取给定标签的所有属性值
我想用html敏捷包获取'span'标签的'id'属性的所有值。但是我没有属性,而是自己获得了标签。这是代码
p>如果有人告诉我这里出了什么问题,我将不胜感激。
c# - 如果 Html 文件没有结束“/tr”标记或“/td”标记,则 HTML 敏捷包无法完美读取该信息
我正在使用 HTML Agility Pack 来解析 html 内容。我正在使用解析来提取表信息。有用。但是如果没有结束“/tr”标签或“/td”标签,那么它不会完美地解析该信息。(其中没有结束tr标签或td标签。)
像
那么为此我该怎么办?
c# - Select all links from a Html table using XPath (and HtmlAgilityPack)
What I am trying to achieve is to extract all links with a href attribute that starts with http://, https:// or /. These links lie within a table (tbody > tr > td etc) with a certain class. I thought I could specify just the the a element without the whole path to it but it does not seem to work. I get a NullReferenceException at the line that selects the links:
I don't know about any recommendations or best practices when it comes to XPath. Do I create overhead when I query the document two times?
c# - 使用 Xpath 根据同级的文本和属性选择元素
查看文档,目标是从第一个表中的第二行中选择第二个单元格。
我创建了以下表达式:
但它不返回任何行。不幸的是,我看不出有什么问题。
对我来说,看起来还不错。表达式应该:
如果您能指出我做错了什么,我将不胜感激。
示例 XML 文档:
c# - 哪个是最好的 HTML 整洁包?HTML 敏捷包中是否有任何选项可以使 HTML 网页整洁?
我正在使用html 敏捷包来解析 html表格信息。现在有一些 html 内容缺少结束标签,并且由于缺少结束标签而来自此类页面 html 敏捷包无法正确解析信息。所以我想在缺少结束标签的地方插入结束标签,以便 html 敏捷包正确解析信息。那么要插入缺少的结束标签我应该怎么做?我应该为此编写自己的代码还是使用html tidy pack来做到这一点?
如果 html tidy pack 那么哪个是最好的html tidy pack,如果可能的话如何使用它的任何例子?如果我自己的代码比它可能是什么样的?
html 敏捷包中是否有任何选项可以使我们能够首先使 html 页面整洁然后解析网页。