Парсинг HTML (CsQuery, HAP) - C#
Формулировка задачи:
Приветствую! Как вывести данные класса "a.shedule-data ", а именно время без дочернего блока div.price_block?
Я нашел вариант (велосипед). Пример на CsQuery
Удаляю дочерний класс, и просто вывожу родителя...
И все бы хорошо, но так делать не есть хорошо. Из div "price_block" необходимо получать содержание определенного тега td.hall-td
В общем, как поступить?
<div class="d-right"> <a href="/reservation/?movieId=26100884&movId=2801" class="shedule-data "> 19:40 <div class="price_block">...</div> </a> <a href="/reservation/?movieId=26100926&movId=2801" class="shedule-data "> 20:30 <div class="price_block">...</div> </a> <a href="/reservation/?movieId=26101101&movId=2801" class="shedule-data "> 21:40 <div class="price_block">...</div> </a> <a href="/reservation/?movieId=26100927&movId=2801" class="shedule-data "> 23:40 <div class="price_block">...</div> </a> </div>
var web = CQ.CreateFromUrl("http://www.luxorfilm.ru/cinema/rostov-na-donu"); var kino_hall = web.Select(".shedule-data "); //проходим по всем классам "shedule-data " if (kino_hall != null) { foreach (var k in kino_hall) { CQ div = web[".price_block"]; div.Remove(); //удаляем дочерний div listBox1.Items.Add(k.InnerText); //выводим данные .класса "shedule-data " в тестовом виде } }
<div class="price_block"> <div class="red-triangle"> </div> <div class="price-cont"> <table class="pbWrap"> <tbody> <tr> <td class="hall-td">Зал 6 VIP</td> <td class="price-td">Цена</td> </tr> <tr> <td>Стандарт:</td> <td>800p.</td> </tr> </tbody> </table> </div> </div>
Решение задачи: «Парсинг HTML (CsQuery, HAP)»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using HtmlAgilityPack; namespace ConsoleApplication20 { class Program { static void Main(string[] args) { string s = @"<div class=""d - right""> <a href = ""/reservation/?movieId=26100884&movId=2801"" class=""shedule-data ""> 19:40 <div class=""price_block"">...</div> </a> <a href = ""/reservation/?movieId=26100926&movId=2801"" class=""shedule-data ""> 20:30 <div class=""price_block"">...</div> </a> <a href = ""/reservation/?movieId=26101101&movId=2801"" class=""shedule-data ""> 21:40 <div class=""price_block"">...</div> </a> <a href = ""/reservation/?movieId=26100927&movId=2801"" class=""shedule-data ""> 23:40 <div class=""price_block"">...</div> </a> </div> "; HtmlDocument HD = new HtmlDocument(); HD.LoadHtml(s); var strs = HD.DocumentNode.SelectNodes("//a[@class='shedule-data ']/text()[1]"); foreach (HtmlNode node in strs) Console.WriteLine(node.InnerText.Trim()); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д