C# 使用HtmlAgillityPack如何在没有HTML标记的情况下仅获取数据?
我开始使用HTMLAgility包在C语言中抓取网页。 我编写此代码是为了在将结果放入标签时从表标记中获取数据 我的目标是将数据放入DataGridView 无论如何,我想一步一步地进行,所以我的问题有两个: 如果没有html标记,我如何只获取数据? 如何从两个或多个标记获取数据? 这是我的代码:C# 使用HtmlAgillityPack如何在没有HTML标记的情况下仅获取数据?,c#,web-scraping,html-agility-pack,C#,Web Scraping,Html Agility Pack,我开始使用HTMLAgility包在C语言中抓取网页。 我编写此代码是为了在将结果放入标签时从表标记中获取数据 我的目标是将数据放入DataGridView 无论如何,我想一步一步地进行,所以我的问题有两个: 如果没有html标记,我如何只获取数据? 如何从两个或多个标记获取数据? 这是我的代码: public partial class Form1 : Form { public Form1() { InitializeComponent(); }
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
string url = "http://www.betexplorer.com/soccer/sweden/allsvenskan/results/";
HtmlWeb web = new HtmlWeb();
HtmlAgilityPack.HtmlDocument doc = web.Load(url);
foreach (HtmlNode node in doc.DocumentNode.SelectNodes("//table"))
{
//node.Remove();
outputLabel.Text += node.InnerText;
}
}
}
EDIT1:我用InnerText更改了InnerHtml。是否也可以从内部标签获取数据?这是html代码的一个示例:
<tr class="first-row">
<td class="first-cell tl">
<a href="../matchdetails.php?matchid=MaxATAKK" onclick="win(this.href, 560, 500, 0, 1); return false;">Gefle - Kalmar</a>
</td>
<td class="result">
<a href="../matchdetails.php?matchid=MaxATAKK" onclick="win(this.href, 560, 500, 0, 1); return false;">4:2</a>
</td>
<td class="odds best-betrate" data-odd="3.53"></td>
<td class="odds" data-odd="3.37"></td>
<td class="odds" data-odd="2.04"></td>
<td class="last-cell nobr date">18.07.2016</td>
</tr>
我需要获取数据奇数值……我如何才能做到这一点?试试这个
foreach (HtmlNode node in doc.DocumentNode.SelectNodes("//table/tr/td[@class='odds']"))
{
var odds = td.Attributes["data-odd"].Value
}
使用node.InnerText..好的,我这样做。你能看到我的编辑吗?我应该在标记中获取数据,尤其是奇数值。ThanksHint/FYI:标记中的数据称为属性