Парсинг страницы - C# (199743)
Формулировка задачи:
Доброго времени суток.
Крайне необходимо парсить страницу
http://www.stoloto.ru/keno/archive
Результаты за 6 месяцев
Страница через чур тяжёлая, HTML только около 5 мегабайт.
Методом "тыка" терпения не хватает что-то делать, инет крайне слабо работает.
Скачал и подключил HtmlAgilityPack, но вообще затрудняюсь, нет опыта с парсингом.
Подскажите как этот код подогнать под эти цели
пример из интернета....ошибки, что-то не правильно?
ссылку на библиотеку подключил HtmlAgilityPack. А эта библиотека может находиться где угодно, или нужно кидать её в папку visual studio?!
нужны данные со страница в таком виде
23569 03.03.2014 03 04 09 11 15 22 34 35 39 53 57 59 62 70 73 75 76 78 79 (текстовый)
или на крайний случай такие
03 04 09 11 15 22 34 35 39 53 57 59 62 70 73 75 76 78 79
Посмотрите опытным взглядом кто понимает, и направьте на путь истинный)
Помогите подогнать код, если не трудно....
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; using System.Net; using HtmlAgilityPack; using HtmlDocument = HtmlAgilityPack.HtmlDocument; namespace parser_keno { public partial class Form1 : Form { public Form1() { InitializeComponent(); } string html = string.Empty; string outputText = ""; private void button1_Click(object sender, EventArgs e) { string htmll = "http://www.stoloto.ru/keno/archive"; HtmlDocument HD = new HtmlDocument(); var web = new HtmlWeb { AutoDetectEncoding = false, OverrideEncoding = Encoding.UTF8, }; HD = web.Load(htmll); // Собственно, здесь и производится выборка интересующих нодов // В данном случае выбираем блочные элементы с классом eTitle HtmlNodeCollection NoAltElements = HD.DocumentNode.SelectNodes("здесь пробовал по разному запросить"); // проверка на наличие найденных узлов if (NoAltElements != null) { foreach (HtmlNode HN in NoAltElements) { //Получаем строчки outputText = HN.InnerText; } } richTextBox1.Text = outputText.ToString(); } } }
Решение задачи: «Парсинг страницы»
textual
Листинг программы
if( a != null && ins != null) { string date = string.Empty; int pos = 0; if ((pos = ins.InnerText.IndexOf(',')) != -1) date = ins.InnerText.Remove(pos); richTextBox1.AppendText(String.Format("{0} {1} ",a.InnerText, date )); } var numberList = indoc.DocumentNode.SelectNodes("//b"); StringBuilder sb = new StringBuilder(256); foreach (var num in numberList) { sb.Append(num.InnerText.Replace(" ", " ")); } richTextBox1.AppendText(sb.ToString().TrimEnd() + Environment.NewLine);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д