.NET 4.x AngleSharp имя Нода - C#
Формулировка задачи:
Собственно получаю Нод, но не могу разобраться как получить его имя (Name)
Интересующий кусок html
<div class="info"><h2 class="no">Вопрос <span class="qno">1</span></h2><div class="state">Пока нет ответа</div><div class="grade">Балл: 1</div><div class="questionflag editable" aria-atomic="true" aria-relevant="text" aria-live="assertive"><input type="hidden" name="q14093277:5_:flagged" value="0"><input type="checkbox" id="q14093277:5_:flaggedcheckbox" name="q14093277:5_:flagged" value="1"><input type="hidden" value="qaid=226993938&qubaid=14093277&qid=278357&slot=5&checksum=e2da55c038c01a65cae579c12ede02aa&sesskey=r4SC4yCNcs&newstate=" class="questionflagpostdata"><label id="q14093277:5_:flaggedlabel" for="q14093277:5_:flaggedcheckbox"><img src="https://lms.mti.edu.ru/theme/image.php?theme=mtimeta&image=i%2Funflagged&rev=758" alt="Не отмечено" id="q14093277:5_:flaggedimg"></label> </div></div><div class="content"><div class="formulation"><h3 class="accesshide">Текст вопроса</h3><input type="hidden" name="q14093277:5_:sequencecheck" value="1"><div class="qtext"> Какой документ применяют в случае перевозки материалов автотранспортом? </div><div class="ablock"><div class="prompt">Выберите один ответ:</div><div class="answer"><div class="r0"><input type="radio" name="q14093277:5_answer" value="0" id="q14093277:5_answer0"><label for="q14093277:5_answer0">накладные на отпуск материалов на сторону</label> </div> <div class="r1"><input type="radio" name="q14093277:5_answer" value="1" id="q14093277:5_answer1"><label for="q14093277:5_answer1">квитанции к железнодорожной накладной</label> </div> <div class="r0"><input type="radio" name="q14093277:5_answer" value="2" id="q14093277:5_answer2"><label for="q14093277:5_answer2">товарно-транспортную накладную</label> </div> </div></div></div></div>
Решение задачи: «.NET 4.x AngleSharp имя Нода»
textual
Листинг программы
using AngleSharp.Parser.Html; using System; using System.Collections.Generic; using System.Linq; public class Program { public static void Main() { string html = @"<div class=""info""><h2 class=""no"">Вопрос <span class=""qno"">1</span></h2><div class=""state"">Пока нет ответа</div><div class=""grade"">Балл: 1</div><div class=""questionflag editable"" aria-atomic=""true"" aria-relevant=""text"" aria-live=""assertive""><input type=""hidden"" name=""q14093277: 5_:flagged"" value=""0""><input type=""checkbox"" id=""q14093277: 5_:flaggedcheckbox"" name=""q14093277: 5_:flagged"" value=""1""><input type=""hidden"" value=""qaid = 226993938 & amp; qubaid = 14093277 & amp; qid = 278357 & amp; slot = 5 & amp; checksum = e2da55c038c01a65cae579c12ede02aa & amp; sesskey = r4SC4yCNcs & amp; newstate = "" class=""questionflagpostdata""><label id=""q14093277: 5_:flaggedlabel"" for=""q14093277: 5_:flaggedcheckbox""><img src=""https://lms.mti.edu.ru/theme/image.php?theme=mtimeta&image=i%2Funflagged&rev=758"" alt=""Не отмечено"" id=""q14093277:5_:flaggedimg""></label> </div></div>< div class=""content""><div class=""formulation""><h3 class=""accesshide"">Текст вопроса</h3><input type = ""hidden"" name= ""q14093277:5_:sequencecheck"" value= ""1"">< div class=""qtext""> Какой документ применяют в случае перевозки материалов автотранспортом? </div><div class=""ablock""><div class=""prompt"">Выберите один ответ:</div><div class=""answer""><div class=""r0""><input type = ""radio"" name=""q14093277:5_answer"" value=""0"" id=""q14093277:5_answer0""><label for=""q14093277:5_answer0"">накладные на отпуск материалов на сторону</label> </div> <div class=""r1""><input type = ""radio"" name=""q14093277:5_answer"" value=""1"" id=""q14093277:5_answer1""><label for=""q14093277:5_answer1"">квитанции к железнодорожной накладной</label> </div> <div class=""r0""><input type = ""radio"" name=""q14093277:5_answer"" value=""2"" id=""q14093277:5_answer2""><label for=""q14093277:5_answer2"">товарно-транспортную накладную</label> </div> </div></div></div></div>"; string infoSelect = @".info"; var parser = new HtmlParser(); var document = parser.Parse(html); var info = document.QuerySelectorAll(infoSelect); var result = info.Select(element => element.QuerySelector("input")?.LocalName); Console.WriteLine(string.Join(" ", info.Select(element => element.QuerySelector("input")?.GetAttribute(@"name")))); Console.WriteLine(string.Join(" ", string.Join(" ", result))); result = info.Select(element => element.QuerySelector("input")?.NodeName); Console.WriteLine(string.Join(" ", string.Join(" ", result))); Console.ReadKey(); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д