Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
2 / 2 / 0
Регистрация: 23.04.2015
Сообщений: 10

Спарсить данные с HTML страницы

29.04.2015, 16:38. Показов 2571. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имеется HTML страница, со следующими содержаниеми:
Кликните здесь для просмотра всего текста
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
<table class="table table-hover">
                    <thead>
                    <tr>
                        <th></th>
                        <th>Имя</th>
                        <th>Уровень</th>
                        <th>Раса</th>
                        <th>Класс</th>
                        <th>Пол</th>
                        <th>AP</th>
                        <th>Ранг</th>
                        <th>Убийств</th>
                    </tr>
                    </thead>
                    <tbody>
                                            <tr>
                            <td>1</td>
                            <td>AlexGordon</td>
                            <td>65</td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/angel.png' title='Ангел' /></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/sniper.png' title='Снайпер'></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/male.png' title='Мужской' /></td>
                            <td>709 511</td>
                            <td>Военачальник</td>
                            <td>2938</td>
                        </tr>
                                                <tr>
                            <td>2</td>
                            <td>Chukcha</td>
                            <td>65</td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/angel.png' title='Ангел' /></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/assassin.png' title='Убийца'></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/male.png' title='Мужской' /></td>
                            <td>456 833</td>
                            <td>Командующий</td>
                            <td>1308</td>
                        </tr>
                                                <tr>
                            <td>3</td>
                            <td>Tralivali</td>
                            <td>65</td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/angel.png' title='Ангел' /></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/assassin.png' title='Убийца'></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/female.png' title='Женский' /></td>
                            <td>178 581</td>
                            <td>Командующий</td>
                            <td>1261</td>
                        </tr>
                                                <tr>
                            <td>4</td>
                            <td>Mantana</td>
                            <td>65</td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/demon.png' title='Демон' /></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/sniper.png' title='Снайпер'></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/female.png' title='Женский' /></td>
                            <td>27 183 126</td>
                            <td>Военачальник</td>
                            <td>2787</td>
                        </tr>
                                                <tr>
                            <td>5</td>
                            <td>Morgan</td>
                            <td>65</td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/angel.png' title='Ангел' /></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/sniper.png' title='Снайпер'></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/male.png' title='Мужской' /></td>
                            <td>969 760</td>
                            <td>Великий генерал</td>
                            <td>1046</td>
                        </tr>
                                                <tr>
                            <td>6</td>
                            <td>Narch</td>
                            <td>65</td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/demon.png' title='Демон' /></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/chanter.png' title='Чародей'></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/male.png' title='Мужской' /></td>
                            <td>630 952</td>
                            <td>Командующий</td>
                            <td>466</td>
                        </tr>
                                                <tr>
                            <td>7</td>
                            <td>Baxa</td>
                            <td>65</td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/angel.png' title='Ангел' /></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/gladiator.png' title='Гладиатор'></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/male.png' title='Мужской' /></td>
                            <td>316 570</td>
                            <td>Великий генерал</td>
                            <td>84</td>
                        </tr>
                                                <tr>
                            <td>8</td>
                            <td>Body</td>
                            <td>65</td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/angel.png' title='Ангел' /></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/chanter.png' title='Чародей'></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/male.png' title='Мужской' /></td>
                            <td>179 445</td>
                            <td>Великий генерал</td>
                            <td>433</td>
                        </tr>
                                                <tr>
                            <td>9</td>
                            <td>Anila</td>
                            <td>65</td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/angel.png' title='Ангел' /></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/bard.png' title='Бард'></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/female.png' title='Женский' /></td>
                            <td>79 208</td>
                            <td>Великий генерал</td>
                            <td>455</td>
                        </tr>
                                                <tr>
                            <td>10</td>
                            <td>Sage</td>
                            <td>65</td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/demon.png' title='Демон' /></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/assassin.png' title='Убийца'></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/male.png' title='Мужской' /></td>
                            <td>52 577</td>
                            <td>Командующий</td>
                            <td>761</td>
                        </tr>
                        
                                                <tr>
                            <td>11</td>
                            <td>Green</td>
                            <td>65</td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/demon.png' title='Демон' /></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/assassin.png' title='Убийца'></td>
                            <td><img src='http://test1.ru/wp-content/themes/Game/img_top/male.png' title='Мужской' /></td>
                            <td>42 273</td>
                            <td>Командующий</td>
                            <td>761</td>
                        </tr>

Помогите спарсить данные и получить данные 10 игроков,в TextBox таком виде:

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
№: 1
Ник: AlexGordon
Раса: Ангел
Класс: Снайпер
Пол: Мужской
Очки: 709 511
Ранг: Военачальник
Убийства: 2938
- - - - - - - - - - - -
№: 2
Ник: Chukcha
Раса: Ангел
Класс: Убийца
Пол: Мужской
Очки: 456 833
Ранг: Командующий
Убийства: 1308
... и т.д до 10-го игрока
Спасибо за ранее!

Добавлено через 2 часа 43 минуты
Помогите пожалуйста!
я совсем нубик в программировании(( выручайте..
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.04.2015, 16:38
Ответы с готовыми решениями:

Как спарсить скрытую информацию со страницы html?
Пишу парсер на C# VS 2017 используя Browser.FindElements(); Но не получается достать скрытую Нужную информацию со страницы (она не...

Как получить html код страницы и спарсить значение?
подскажите как получить html код страницы и спарсить значение Вот часть html &lt;script type=&quot;text/javascript&quot;&gt; ...

Как получить данные с html страницы
Здравствуйте. Подскажите пожалуйста. Появилась необходимость написать программу, которая при нажатии стартовой кнопки(или по таймеру) может...

5
 Аватар для ture
553 / 361 / 206
Регистрация: 27.11.2014
Сообщений: 1,049
29.04.2015, 17:11
Html Agility Pack
0
Warrior
 Аватар для _exp10der_
500 / 427 / 177
Регистрация: 23.11.2014
Сообщений: 932
29.04.2015, 19:13
Лучший ответ Сообщение было отмечено NCsharper как решение

Решение

На скорую руку

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Windows.Forms;
using HtmlAgilityPack;
using HtmlDocument = HtmlAgilityPack.HtmlDocument;
 
namespace ConsoleApplication3
{
    internal class Program
    {
        private static void Main()
        {
            var doc = new HtmlDocument();
            doc.Load("input.txt");
 
            var q = doc.DocumentNode.SelectNodes("//tbody/tr").Select(n =>
            {
                IEnumerable<HtmlNode> tmpArr = n.Elements("td");
 
                return new
                {
                    number = tmpArr.ElementAt(0).InnerHtml,
                    nick = tmpArr.ElementAt(1).InnerHtml,
                    race = tmpArr.ElementAt(3).Element("img").GetAttributeValue("title", ""),
                    @class = tmpArr.ElementAt(4).Element("img").GetAttributeValue("title", ""),
                    sex = tmpArr.ElementAt(5).Element("img").GetAttributeValue("title", ""),
                    points = tmpArr.ElementAt(6).InnerHtml,
                    rank = tmpArr.ElementAt(7).InnerHtml,
                    killing = tmpArr.ElementAt(8).InnerHtml
                };
            }).ToList();
 
            string result = q.Aggregate(string.Empty,
                (current, variable) =>
                    current +
                    (variable.number + Environment.NewLine + variable.nick + Environment.NewLine + variable.race +
                     Environment.NewLine + variable.@class + Environment.NewLine + variable.sex + Environment.NewLine +
                     variable.points + Environment.NewLine + variable.rank + Environment.NewLine + variable.killing +
                     Environment.NewLine + Environment.NewLine));
 
 
            var textBox = new TextBox();
            textBox.Multiline = true;
            textBox.ScrollBars = ScrollBars.Both;
            textBox.Size = new Size(234, 237);
            textBox.Text = result;
 
            var form = new Form();
            form.Controls.Add(textBox);
            form.AutoSize = true;
 
            Application.Run(form);
        }
    }
}
Вложения
Тип файла: rar lllllllllllllllllllllllllllll.rar (1.74 Мб, 24 просмотров)
2
2 / 2 / 0
Регистрация: 23.04.2015
Сообщений: 10
01.05.2015, 14:30  [ТС]
_exp10der_, Спасибо работает на отлично!
Но он получает данные всех игроков, мне надо чтобы получал только первые 10 игроков!
Как это сделать?
0
Warrior
 Аватар для _exp10der_
500 / 427 / 177
Регистрация: 23.11.2014
Сообщений: 932
01.05.2015, 14:35
Лучший ответ Сообщение было отмечено NCsharper как решение

Решение

NCsharper,
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Windows.Forms;
using HtmlAgilityPack;
using HtmlDocument = HtmlAgilityPack.HtmlDocument;
 
namespace ConsoleApplication3
{
    internal class Program
    {
        private static void Main()
        {
            var doc = new HtmlDocument();
            doc.Load("input.txt");
 
            var q = doc.DocumentNode.SelectNodes("//tbody/tr").Select(n =>
            {
                IEnumerable<HtmlNode> tmpArr = n.Elements("td");
 
                return new
                {
                    number = tmpArr.ElementAt(0).InnerHtml,
                    nick = tmpArr.ElementAt(1).InnerHtml,
                    race = tmpArr.ElementAt(3).Element("img").GetAttributeValue("title", ""),
                    @class = tmpArr.ElementAt(4).Element("img").GetAttributeValue("title", ""),
                    sex = tmpArr.ElementAt(5).Element("img").GetAttributeValue("title", ""),
                    points = tmpArr.ElementAt(6).InnerHtml,
                    rank = tmpArr.ElementAt(7).InnerHtml,
                    killing = tmpArr.ElementAt(8).InnerHtml
                };
            }).Take(10).ToList();
 
            string result = q.Aggregate(string.Empty,
                (current, variable) =>
                    current +
                    (variable.number + Environment.NewLine + variable.nick + Environment.NewLine + variable.race +
                     Environment.NewLine + variable.@class + Environment.NewLine + variable.sex + Environment.NewLine +
                     variable.points + Environment.NewLine + variable.rank + Environment.NewLine + variable.killing +
                     Environment.NewLine + Environment.NewLine));
 
 
            var textBox = new TextBox();
            textBox.Multiline = true;
            textBox.ScrollBars = ScrollBars.Both;
            textBox.Size = new Size(234, 237);
            textBox.Text = result;
 
            var form = new Form();
            form.Controls.Add(textBox);
            form.AutoSize = true;
 
            Application.Run(form);
        }
    }
}
2
2 / 2 / 0
Регистрация: 23.04.2015
Сообщений: 10
01.05.2015, 14:39  [ТС]
_exp10der_, Спасибо!!! вы мой герой!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.05.2015, 14:39
Помогаю со студенческими работами здесь

Программно вывести необходимые данные из HTML страницы.
Здравствуйте друзья! Я программно перешел на страницу сайта (формата страницы HTML) через приложение написанное на С#, на страничке...

Не получается спарсить html страницы через php
Привет друзья, нуждаюсь в вашей помощи! $listtest = file_get_contents('ссылка'); Дело в том, что сайт с которого я хочу спарсить...

Спарсить со страницы данные о домене
Доброго времени суток, подскажите, как реализовать следующее проверяю домены на занятость. сервис отдает страничку, где домены вот в...

Спарсить название html-страницы (содержимое тега title)
Доброго времени суток! Есть сайт со страницей вида: &lt;html&gt; &lt;head&gt; &lt;title&gt;MPAYKYAYRRALM&lt;/title&gt; &lt;/head&gt; &lt;body&gt;...

Спарсить с html-страницы ссылки, которые начинаются на user_
Здравствуйте. Мне нужно спарсить с html страницы ссылки которые начинаются на user_ Вот данная страница: http://kasok.net/rating.html ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru