我正在使用它来获取一些数据:
string s = dom["table .lotto strong"].Text();
但我把所有东西都放在了 1 行。我可以分别解析该表中的每个元素并对其进行操作(例如<br />
在每个元素之后添加,因此我不会在 1 行中获取数据)。
令人惊讶的是,文档没有显示迭代。
我正在使用它来获取一些数据:
string s = dom["table .lotto strong"].Text();
但我把所有东西都放在了 1 行。我可以分别解析该表中的每个元素并对其进行操作(例如<br />
在每个元素之后添加,因此我不会在 1 行中获取数据)。
令人惊讶的是,文档没有显示迭代。
如果你看一下 Text 函数的描述,它只返回一个字符串。基本上,如果您的元素很少,例如 2 个 div,它会将所有内容添加到 1 个字符串中。(如 string.Join())
如果我得到了你想要的东西,那就是这样 =>
dom["table .lotto strong"].Each(dom=> {
//doing something what you need with dom var (dom is a IDomObject type)
});
朝觐。我设法做到了。例子:
CQ dom = CQ.CreateFromUrl("http://www.somewebsite.xxx");
var rows = dom.Select(".box_results table.results-box_list tr");
var output = @"<table class='table tableballs'>
<thead>
<tr>
<th></th>
<th>Syndicate</th>
<th>Draw Date</th>
<th>Results</th>
</tr>
</thead>
<tbody>";
foreach (var row in rows.Has("td"))
{
output += "<tr>";
CQ tdcells = row.Cq().Find("td");
output += String.Format("<td></td><td>{0}</td><td>{1}</td>",
tdcells[0].Cq().Text(),
tdcells[1].Cq().Text());
var uls = dom.Select(".ball_numbers ul");
int count = 0;
output += "<td><ul class='balls'>";
var numbersTrim = "";
foreach (var ul in tdcells[2].Cq())
{
CQ licells = ul.Cq().Find("li");
foreach (var li in licells)
{
numbersTrim += String.Join("", "<li>" + licells[count].Cq().Text() + "</li>");
count++;
}
output += numbersTrim;
}
count = 0;
output += @"</ul></td>
</tr>";
}
output += @"</table>";
享受老朋友老朋友