【发布时间】:2019-03-14 18:56:30
【问题描述】:
对机器人和 C# 来说一般来说是新的。我正在尝试输出与//a[@class='featuredBox 匹配的所有链接内部文本,但它只输出数据的第一位。
当我调试时,它确实附加了很多值,所以我很困惑为什么这没有全部输出?
protected void Page_Load(object sender, EventArgs e)
{
HtmlAgilityPack.HtmlWeb web = new HtmlAgilityPack.HtmlWeb();
HtmlAgilityPack.HtmlDocument doc = web.Load("https://www.jasminedirectory.com/computers/companies/");
var headingNames = doc.DocumentNode.SelectNodes("//a[@class='featuredBox']").ToList();
foreach (var item in headingNames)
{
botOutput.Text = item.InnerText + "</br>";
}
}
任何帮助将不胜感激。
【问题讨论】:
-
headingNames中是否有多个项目? -
是的,有。不少。
-
或者你可以用 Linq 代替
foreach循环:botOutput.Text = string.Join("</br>", headingNames.Select(item => item.InnerText)) + "</br>";
标签: c# web-scraping foreach