Tag: html agility pack

HtmlAgilityPackselectchildNodes不是预期的

我试图使用HtmlAgilityPack库来parsing页面中的一些链接,但是我没有看到我期望的方法的结果。 在下面我有一个HtmlNodeCollection的链接。 对于每一个链接,我想检查是否有一个图像节点,然后parsing它的attribures,但是linkNode的SelectNodes和SelectSingleNode方法似乎是search父文档而不是linkNode的childNodes什么给? HtmlDocument htmldoc = new HtmlDocument(); htmldoc.LoadHtml(content); HtmlNodeCollection linkNodes = htmldoc.DocumentNode.SelectNodes("//a[@href]"); foreach(HtmlNode linkNode in linkNodes) { string linkTitle = linkNode.GetAttributeValue("title", string.Empty); if (linkTitle == string.Empty) { HtmlNode imageNode = linkNode.SelectSingleNode("/img[@alt]"); } } 有没有其他方法可以得到linkNode的图像childNode的ALT属性,如果它存在?

HTML敏捷性包 – parsing表

我想使用HTML敏捷性包parsing来自复杂网页的表,但我在某种程度上迷失在对象模型中。 我看了链接的例子,但没有find任何表格数据。 我可以使用XPath获取表格吗? 加载了关于如何获取表格的数据后,我基本上已经丢失了。 我之前在Perl中做过这件事,这有点笨拙,但工作。 ( HTML::TableParser )。 如果能够解释正确的对象顺序,我也很高兴。

HtmlAgilityPack:以stringforms获取整个HTML文档

HtmlAgilityPack是否能够以HtmlDocument对象的forms返回整个 HTML标记?

Html敏捷包按类别获取所有元素

我正在攻击html敏捷包,无法find正确的方式去做这件事。 例如: var findclasses = _doc.DocumentNode.Descendants("div").Where(d => d.Attributes.Contains("class")); 但是,显然你可以添加更多的类,然后divs,所以我尝试了这个.. var allLinksWithDivAndClass = _doc.DocumentNode.SelectNodes("//*[@class=\"float\"]"); 但是,这并不处理您添加多个类的情况下,“浮动”只是其中之一像这样.. class="className float anotherclassName" 有办法处理所有这一切吗? 我基本上想要select所有具有类=和包含浮动的节点。 **答案已经在我的博客文档中有详细的解释: Html Agility Pack按类别获取所有元素

Html Agility Pack是否仍然是最好的.NET HTMLparsing器?

Html Agility Pack是前段时间给出的一个StackOverflow问题的答案,它仍然是最好的select? 还有什么其他的select应该考虑? 有更轻量级的东西吗?

HTML敏捷包 – 删除不需要的标签而不删除内容?

我在这里看到了一些相关的问题,但是他们并没有提到我面临的同样的问题。 我想使用HTML Agility Pack从我的HTML中删除不需要的标签,而不会丢失标签内的内容。 例如,在我的情况下,我想保留标签“ b ”,“ i ”和“ u ”。 对于像这样的input: <p>my paragraph <div>and my <b>div</b></div> are <i>italic</i> and <b>bold</b></p> 生成的HTML应该是: my paragraph and my <b>div</b> are <i>italic</i> and <b>bold</b> 我尝试使用HtmlNode的Remove方法,但它也删除我的内容。 有什么build议么?

使用HtmlAgilityPackparsingHTML页面

使用C#我想知道如何从这个示例html脚本获取文本框的值(即:约翰): <TD class=texte width="50%"> <DIV align=right>Name :<B> </B></DIV></TD> <TD width="50%"><INPUT class=box value=John maxLength=16 size=16 name=user_name> </TD> <TR vAlign=center>

HTML敏捷包条带标签不在白名单中

我试图创build一个函数,删除不在白名单中的HTML标签和属性。 我有以下的HTML: <b>first text </b> <b>second text here <a>some text here</a> <a>some text here</a> </b> <a>some twxt here</a> 我正在使用HTML敏捷包,我到目前为止的代码是: static List<string> WhiteNodeList = new List<string> { "b" }; static List<string> WhiteAttrList = new List<string> { }; static HtmlNode htmlNode; public static void RemoveNotInWhiteList(out string _output, HtmlNode pNode, List<string> pWhiteList, List<string> attrWhiteList) { // remove all […]

HtmlAgilityPack – 由于某种原因,<form>是否closures?

我只是写了这个testing,看看我是不是疯了… using System; using System.Collections.Generic; using System.Linq; using System.Text; using HtmlAgilityPack; namespace HtmlAgilityPackFormBug { class Program { static void Main(string[] args) { var doc = new HtmlDocument(); doc.LoadHtml(@" <!DOCTYPE html> <html> <head> <title>Form Test</title> </head> <body> <form> <input type=""text"" /> <input type=""reset"" /> <input type=""submit"" /> </form> </body> </html> "); var body = doc.DocumentNode.SelectSingleNode("//body"); foreach […]

如何使用HTML敏捷包

我如何使用HTML敏捷包 ? 我的XHTML文档不完全有效。 这就是为什么我想要使用它。 我如何在我的项目中使用它? 我的项目是在C#中。