У меня есть следующий фрагмент исходного кода:
<div class = "discount_tools_row">
<div class = "discount_tools">
<ul>
<li><a href = "#" class = "share-discount" rel = "nofollow"></a></li>
<li><a href = "/deal/map/4243683"
class = "show-location"
title = "הראה מקום על מפה"
data-address = "רח' האצ"ל 39, ראשון לציון"></a></li>
</ul>
<link rel = "prerender"
href = "http:/ / www.bigdeal.co.il / ? CampaignId = 873 & sId = 10 ">
<a class = "tavo_button"
data-provider = "bigdeal"
href = "http : //www.bigdeal.co.il/?CampaignId=873&sId=10"
target="_blank"
rel = "nofollow">תבוא!</a>
</div>
</div>
</div>
Используя HTML Agility Pack, я хочу получить пары <data-address value, link rel="prerender" href value>
.
Я попробовал следующее, но получил неправильные результаты:
var nodes = doc.DocumentNode.SelectNodes(
"//div[@class=\"discount_tools\"]");
var geoNodes = nodes.Where(node => !string.IsNullOrEmpty(
node.ChildAttributes("data-address").ToString()));
AnswerFormat ans = new AnswerFormat {
Locations = geoNodes.Select(
node => node.ChildAttributes("data-address").ToString()).ToList(),
//Names = nodes.Select(node => node.Attributes["data-address"].Value).
//ToList(),
Details = geoNodes.Select(
node => node.ChildAttributes("data-direct-url").ToString()).ToList()
};
Я пытался достичь всего
< div class = "discount_tools" >
с
data-address
атрибут в их childNode и
<a class="tavo_button" data-provider="bigdeal" href=
в другом дочернем узле
Как я могу улучшить свой запрос?