使用HTML敏捷包抓取HTML
本文关键字:HTML 抓取 包抓取 使用 | 更新日期: 2023-09-27 18:16:18
我有一个包含以下代码的HTML
<div id="image_src" style="display: block; ">
<img id="captcha_img" src="" alt="image" onclick="imageClick(event)" style="cursor:crosshair;">
如何使用HTML敏捷包检测src ?
从另一个问题我尝试使用以下LINQ
var urls = document.DocumentNode.Descendants("img")
.Select(e => e.GetAttributeValue("src", null))
.Where(s => !String.IsNullOrEmpty(s));
但是我一直得到空指针异常…
我在整个HTML中只有一个图像标签,如上所述
要排除空指针异常,请将每个Linq语句分成单独的行,如下所示:
var img = document.DocumentNode.Descendants("img");
var s = img.Select(e => e.GetAttributeValue("src", null));
var w = s.Where(s => !String.IsNullOrEmpty(s));
然后,用调试器逐行调试每一行,看看它在哪里抛出
使用HTML敏捷包
HtmlAgilityPack.HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);
string imgValue = doc.DocumentNode.SelectSingleNode("//img[@id = '"captcha_img'"]").GetAttributeValue("src", "0");