C# Html页面上的Html表-无XML
我试图从网站上的Html表中获取数据。不涉及XMLC# Html页面上的Html表-无XML,c#,html,web-scraping,html-table,html-agility-pack,C#,Html,Web Scraping,Html Table,Html Agility Pack,我试图从网站上的Html表中获取数据。不涉及XML <table id="e-cal-table" class="e-cal-table" width="100%"> <tr> <th>Date</th> <th>Time</th> <th>Currency</th> <th>Event</th> <th>Impo
<table id="e-cal-table" class="e-cal-table" width="100%">
<tr>
<th>Date</th>
<th>Time</th>
<th>Currency</th>
<th>Event</th>
<th>Importance</th>
<th>Actual</th>
<th>Forecast</th>
<th>Previous</th>
<th>Notes</th>
</tr>
我不知道如何识别表以便将来进行解析。不幸的是,我能找到的唯一示例都与XML有关。您上面的HTML缺少一个结束表标记。这可能是问题所在吗?
您可以尝试Hpricot或Nokogiri。如果您从
字符串加载您的文档,那么您的代码可以工作
如果您想从url加载它,请使用doc.load(url)代码>非文档加载HTML(htmlString)代码>
--编辑--
对不起,我的坏,doc.Load
不接受http
你可以用这样的东西
using (var wc = new WebClient())
{
doc.LoadHtml(wc.DownloadString(url);
}
为什么你得到的是InnerText
而不是InnerHtml
?InnerText
可能什么都不会给你。该表没有文本节点。你可能想试试InnerHtml
。恐怕我在InnerHtml上也遇到了同样的问题。也许我的路错了?从我读到的内容来看,我可以直接进入我想要的开场白。嘿,斯塔克豪斯——实际上桌子上还有更多。我只是想让你能看到我在尝试识别它时看到的东西。Hi L.B-doc.Load(“);结果是“URI格式不受支持”。我误解了吗?Stack去掉了“http”部分。
using (var wc = new WebClient())
{
doc.LoadHtml(wc.DownloadString(url);
}