代码之家  ›  专栏  ›  技术社区  ›  Sergio Tapia

如何解析这个HTML文件?

  •  0
  • Sergio Tapia  · 技术社区  · 14 年前
    <div id="main">
    
    <style type="text/css">
    </style>
    
    <script language="JavaScript">    
    </script>
    <p style="margin: 0pt 0pt 0.5em;"><b>Media from&nbsp;<a onclick="(new Image()).src='/rg/find-media-title/media_strip/images/b.gif?link=/title/tt0087538/';" href="/title/tt0087538/">The Karate Kid</a> (1984)</b></p>
    <style type="text/css">    
    </style>
    
    <table style="border-collapse: collapse;">
    </table>
    </div>
    

    我需要以某种方式提取(new Image())的href值。使用HtmlAgilityPack究竟该如何实现这一点?

    谢谢你的帮助!

    1 回复  |  直到 14 年前
        1
  •  0
  •   Rohit Agarwal    14 年前

    HtmlAgilityPack本身并不提供很多解析选项。但是您可以将它与XPath结合使用来完成任何复杂的解析。在你的例子中,你可以-

    var testString = "..."; // Your html 
    var doc = new HtmlDocument();
    doc.LoadHtml(testString);
    var node = doc.DocumentNode.SelectSingleNode("/div/p/b/a");
    var hrefValue = node.GetAttributeValue("href", ""));
    

    这会给你

    /title/tt0087538/