问题标签 [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 Agility Pack - 在特定节点之后选择节点
我在 codeplex 讨论中提出了这个问题,但我希望在 stackoverflow 上得到更快的答案。
因此,我使用 HTML Agility Pack 在 C# 中进行 HTML 解析。我有以下html结构:
而且我需要获取在具有类“特定”的 p 元素之后存在的所有具有类“段落”的 p 元素。
有没有办法做到这一点?
谢谢。
c# - 使用格式错误的内容抓取网页时遇到问题
我编写了利用 HtmlAgilityPack 库的 c# 代码,以便抓取位于以下位置的页面:World's Largest Urban Areas (Page 2)。不幸的是,该页面包含格式错误的内容。
我在如何抓取此页面方面陷入僵局。我拥有的当前代码(出现在下面)在解析 HTML 时冻结:
目标是用每个数据点解析页面上列出的每个城市;而已。寻找有关如何修改上述代码或使用另一个免费提供的库的建议。
谢谢!
c# - 当没有关闭的 html 标签时,是否可以解决 HtmlAgilityPack 中的问题?
好吧,我有以下问题。
我拥有的 html 格式不正确,在这种情况下,我在使用 html 敏捷包选择节点时遇到问题。
代码如下:
问题是 String_A2_2 括在括号中。
所以 htmlagility 包在 lststrText 中返回 5 个字符串而不是 4 个。
那么是否可以让 htmlagility pack 将元素 3 返回为
"<strong>Elem_A</strong>String_A2_2 <String_A2_2> asdas"
?
或者我可以做一些预处理来关闭元素?
lststrText 的当前内容是
c# - 将节点类型更改为#text,同时使用 HtmlAgilityPack 保留内部节点
我正在使用HtmlAgilityPack来解析要转换为 HTML 的 XML 文件。一些节点将被转换为 HTML 等价物。其他不必要的我需要在保留内容的同时删除。我尝试将其转换为 #text 节点,但没有成功。这是我的代码:
最后,如果找不到节点,我需要进行节点替换(您会看到“替换为#text”注释)。我整天都在扯我的头发(剩下的),这可能很愚蠢。我无法获得编译帮助,也没有在线版本。帮助 Stackoverflow!你是我唯一的希望。;-)
c# - 按大多数图像排序节点?
这听起来可能有点复杂,但我想做的是找到所有<a>
包含<img>
s 的 s ,以便首先选择位于同一节点中且其他图像数量最多的图像。
例如,如果我的页面如下所示:
http://img684.imageshack.us/img684/5678/imagechart.gif
如果蓝色方块是<div>
s,粉红色方块是<img>
s,则中间div
包含最多的图像,然后首先选择这些图像。由于它们没有比这更深的嵌套,它们只是按照它们在页面上的顺序出现。接下来选择第一个 div(包含第二多的图像),依此类推......这有意义吗?
我们可以递归地思考它。首先body
将被选择,因为它总是包含最多的图像,然后检查每个直接子节点以查看哪个包含最多图像后代(不一定是直接的),然后我们进入该节点,并重复......
c# - 如何解析这段 HTML?
早上好!我正在使用 c#(框架 3.5sp1)并想通过正则表达式解析以下 html:
我需要以下输出:
- 第一组:h1的内容
- 第 2 组:h1 跟随文本的内容
- 第 3-n 组:子标题的内容 + 文本
我有什么自动取款机:
由于尾随<hr/>
. 为了解析 h1 标题,我有另一个模式 ( <h1.*?>(.*?)</h1>
),它只给我标题而不是内容 - 我对那个 atm 很好。
是否有人对我或任何替代逻辑有提示/解决方案(例如,通过阅读器解析 html 并以这种方式分配它?)?
编辑:
由于一些人引入了HTMLAgilityPack,我对这个不错的工具很好奇。我完成了获取<h1>
-tag的内容。
但是......我的问题是解析其余的。这是由以下原因引起的:内容的标签可能会有所不同 - 从<p>
to<div>
和<ul>
... atm 这似乎或多或少地迭代整个文档并解析标签的标签 ...?任何提示?
asp.net - HtmlAgilityPack 表达式得到这个?
嗨,我正在使用 HtmlAgilityPack 浏览一个 html 字符串。现在我需要得到一个标签之间的一切。它看起来像这样。
现在我用这个表达式来完成这个任务。 编辑:
我只得到了第 6 个,但大约有 24 张桌子。为什么,有什么想法吗?
c# - 使用 HTML Agility Pack 删除带前缀的标签
我正在尝试使用 HAP 访问带有前缀的标签,但以下内容不起作用(它们不返回任何内容):
有什么想法吗?
编辑:
HTML 看起来像这样:
<p>Men's Standings<br />
<sc:xslfile runat="server" datasource="/Global/Tables/1_01/9859_" id="WC_9859"></sc:xslfile>
<br /><br /><br />
Women's Standings
<br /><sc:xslfile runat="server" datasource="/Global/Tables/1_01/9860_" id="WC_9860"></sc:xslfile></p>
@Pat,我尝试了starts-with,但仍然不行。
也许是因为标签是空的?
c# - 全选来自使用 HTMLAgilityPack 的节点的孩子
我有以下用于获取 html 页面的代码。将网址设为绝对网址,然后将链接设为 rel nofollow 并在新窗口/选项卡中打开。我的问题是围绕向<a>
s 添加属性。
谁能看到我做错了什么?在这里尝试了一段时间没有运气。此代码出现 ContentNode.SelectNodes("/a") 未设置为对象的实例。我想尝试将蒸汽设置为0?
干杯,丹尼斯
c# - 如何使用 HTML Agility Pack 从网站检索所有图像?
我刚刚下载了 HTMLAgilityPack,文档没有任何示例。
我正在寻找一种从网站下载所有图像的方法。地址字符串,而不是物理图像。
我需要提取每个 img 标签的来源。我只是想了解一下图书馆以及它可以提供什么。每个人都说这是完成这项工作的最佳工具。
编辑