【发布时间】:2011-08-02 15:34:31
【问题描述】:
我正在尝试使用 Agility 包来解析来自不同页面的某些信息。我有点担心使用它可能会过度使用我需要的东西,如果是这种情况,请随时告诉我。无论如何,我正在尝试解析来自杂色傻瓜的页面,以根据股票代码获取公司的名称。我将解析几个页面以类似的方式获取股票信息。
我要解析的 HTML 如下所示:
<h1 class="subHead">
Microsoft Corp <span>(NASDAQ:MSFT)</span>
</h1>
另外,我要解析的页面是:http://caps.fool.com/Ticker/MSFT.aspx
所以,我想我的问题是我如何简单地从 html 中获取 Microsoft Corp,我什至应该使用敏捷包来做这样的事情吗?
编辑:当前代码
public String getStockName(String ticker)
{
String text ="";
HtmlAgilityPack.HtmlWeb web = new HtmlAgilityPack.HtmlWeb();
HtmlAgilityPack.HtmlDocument doc = web.Load("http://caps.fool.com/Ticker/" + ticker + ".aspx");
var node = doc.DocumentNode.SelectSingleNode("/h1[@class='subHead']");
text = node.FirstChild.InnerText.Trim();
return text;
}
【问题讨论】:
-
我发现 HTML Agility Pack 非常适合这种情况 - 即在没有提供数据源的情况下,但出于某种原因您仍想解析第 3 方数据。我做了一些与你过去所做的非常相似的事情。下一步是解析价格、每日变化等:)
-
@C.McAtackney 谢谢!是的,这只是一个开始,但我认为一旦我的脚湿了,它就不会那么粗糙了。感谢您让我知道我在正确的轨道上。
标签: c# html html-parsing html-agility-pack