HtmlAgilityPack - как получить значение атрибута в одинарных кавычках? - PullRequest
0 голосов
/ 27 декабря 2018

У меня есть следующий HTML:

<div id="search_posts">
<article class="xxx"  data-id='79642521778' data-type='photoset' <!-- many other attributes in single quotes-->> Article text 1 </article>
<article class="xxx"  data-id='84701653287' data-type='photoset' <!-- many other attributes in single quotes-->> Article text 2 </article>
</div>

Мне нужно получить идентификатор 1-й статьи, т. Е. 79642521778.

Что я сделал до сих пор:

//assuming that the HtmlDocument has already loaded
string test = doc.GetElementbyId("search_posts").SelectNodes("//article").First().OuterHtml;
test = doc.DocumentNode.GetAttributeValue("data-id", "NULL");

И он возвращает NULL.Как я могу получить правильное значение?Спасибо.

1 Ответ

0 голосов
/ 27 декабря 2018

Вы пытаетесь получить атрибут data-id на doc.DocumentNode, а не на article узле.

var articles = doc.GetElementbyId("search_posts").SelectNodes("//article");
var firstDataId = articles.First().GetAttributeValue("data-id", "NULL");
...