Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.12.2016, 12:05   #1
Макс2012
 
Регистрация: 16.09.2011
Сообщений: 9
По умолчанию Построчно перебрать html код

Всем привет. Есть компонент webBrowser или chromium можно ли код страницы перебрать построчно? Есть код
Код:
for i := 0 to WebBrowser1.OleObject.Document.All. Length - 1 do
begin
Memo1.Lines.Text:=Memo1.Lines.Text+ WebBrowser1.OleObject.Document.All. Item(i).InnerHTML;
end;
Но он выгружается кусками, а мне нужно чтобы каждая строчка htm кода выгружалась. Для того чтобы была возможность сравнить полученную строку.
Макс2012 вне форума Ответить с цитированием
Старый 16.12.2016, 13:19   #2
kropotkina-alice
Форумчанин
 
Аватар для kropotkina-alice
 
Регистрация: 27.10.2014
Сообщений: 594
По умолчанию

Ну, во-первых, не "выгружается", а загружается...
А зачем кусочничать-то?
Делаем примерно так:
Код:
var Doc: IHTMLDocument2;
    S: string;
    ok: boolean;
    OLEHtmlText: OLEVariant;
...
OLEHtmlText:='http://myadress.ru/';
WebBrowser1.Navigate2(OLEHtmlText);
//делаем задержку, пока не сделается WebBrowser1DocumentComplete
Doc:= WebBrowser1.Document as IHTMLDocument2;
s:=Doc.body.outerHTML;
Memo1.Text:=s;
И дальше ковыряемся в полном тексте страницы, т.е. в Memo1.Text...
kropotkina-alice вне форума Ответить с цитированием
Старый 16.12.2016, 13:33   #3
Макс2012
 
Регистрация: 16.09.2011
Сообщений: 9
По умолчанию

Цитата:
Сообщение от kropotkina-alice Посмотреть сообщение
Ну, во-первых, не "выгружается", а загружается...
А зачем кусочничать-то?
Делаем примерно так:
Код:
var Doc: IHTMLDocument2;
    S: string;
    ok: boolean;
    OLEHtmlText: OLEVariant;
...
OLEHtmlText:='http://myadress.ru/';
WebBrowser1.Navigate2(OLEHtmlText);
//делаем задержку, пока не сделается WebBrowser1DocumentComplete
Doc:= WebBrowser1.Document as IHTMLDocument2;
s:=Doc.body.outerHTML;
Memo1.Text:=s;
И дальше ковыряемся в полном тексте страницы, т.е. в Memo1.Text...
Это я знаю как сделать)
Проблема в том, что мне нужно найти на странице тег <CENTER> далее просмотреть все его содержимое, определить на какой странице находимся по атрибуту <BUTTON class="btn btn-link disabled">1</BUTTON> и кликнуть на следующую ссылку href="?page=2". Никак не могу понять как это всё организовать, ранее не сталкивался с парсингом страниц.
Мне бы рабочий код, а я бы уже от него учился дальше как парсить.


<CENTER><A href="#"><BUTTON class="btn btn-link disabled">1</BUTTON></A><A title="Перейти на страницу 2" href="?page=2"><BUTTON class="btn btn-link">2</BUTTON></A><A title="Перейти на страницу 3" href="?page=3"><BUTTON class="btn btn-link">3</BUTTON></A><A title="Перейти на страницу 4" href="?page=4"><BUTTON class="btn btn-link">4</BUTTON></A><A title="Перейти на страницу 5" href="?page=5"><BUTTON class="btn btn-link">5</BUTTON></A><A title="Перейти на страницу 6" href="?page=6"><BUTTON class="btn btn-link">6</BUTTON></A><A title="Перейти на страницу 7" href="?page=7"><BUTTON class="btn btn-link">7</BUTTON></A><A title="Перейти на страницу 8" href="?page=8"><BUTTON class="btn btn-link">8</BUTTON></A><A title="Перейти на страницу 9" href="?page=9"><BUTTON class="btn btn-link">9</BUTTON></A><A title="Перейти на страницу 10" href="?page=10"><BUTTON class="btn btn-link">10</BUTTON></A><A title="Перейти на страницу 11" href="?page=11"><BUTTON class="btn btn-link">11</BUTTON></A><A title="Перейти на страницу 12" href="?page=12"><BUTTON class="btn btn-link">12</BUTTON></A><A title="Перейти на страницу 13" href="?page=13"><BUTTON class="btn btn-link">13</BUTTON></A><A title="Перейти на страницу 14" href="?page=14"><BUTTON class="btn btn-link">14</BUTTON></A><A title="Перейти на страницу 15" href="?page=15"><BUTTON class="btn btn-link">15</BUTTON></A><A title="Перейти на страницу 16" href="?page=16"><BUTTON class="btn btn-link">16</BUTTON></A><A title="Перейти на страницу 17" href="?page=17"><BUTTON class="btn btn-link">17</BUTTON></A><A title="Перейти на страницу 18" href="?page=18"><BUTTON class="btn btn-link">18</BUTTON></A><A title="Перейти на страницу 19" href="?page=19"><BUTTON class="btn btn-link">19</BUTTON></A><A title="Перейти на страницу 20" href="?page=20"><BUTTON class="btn btn-link">20</BUTTON></A><A title="Перейти на страницу 21" href="?page=21"><BUTTON class="btn btn-link">21</BUTTON></A><A title="Перейти на страницу 22" href="?page=22"><BUTTON class="btn btn-link">22</BUTTON></A><A title="Перейти на страницу 23" href="?page=23"><BUTTON class="btn btn-link">23</BUTTON></A><A title="Перейти на страницу 24" href="?page=24"><BUTTON class="btn btn-link">24</BUTTON></A><A title="Перейти на страницу 25" href="?page=25"><BUTTON class="btn btn-link">25</BUTTON></A><A title="Перейти на страницу 26" href="?page=26"><BUTTON class="btn btn-link">26</BUTTON></A><A title="Перейти на страницу 27" href="?page=27"><BUTTON class="btn btn-link">27</BUTTON></A><A title="Перейти на страницу 28" href="?page=28"><BUTTON class="btn btn-link">28</BUTTON></A><A title="Перейти на страницу 29" href="?page=29"><BUTTON class="btn btn-link">29</BUTTON></A><A title="Перейти на страницу 30" href="?page=30"><BUTTON class="btn btn-link">30</BUTTON></A></CENTER>
Макс2012 вне форума Ответить с цитированием
Старый 16.12.2016, 13:39   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Я же вам уже писал в другой теме - для хромиума делайте дом визитеры.
p51x на форуме Ответить с цитированием
Старый 16.12.2016, 13:42   #5
Макс2012
 
Регистрация: 16.09.2011
Сообщений: 9
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Я же вам уже писал в другой теме - для хромиума делайте дом визитеры.
Я помню, но понять не могу как реализовать. Так как ранее не парсил сайты, и сейчас на работе это требуют. Перерыл уже интернет но то, что мне нужно найти не могу.
Макс2012 вне форума Ответить с цитированием
Старый 16.12.2016, 13:44   #6
Макс2012
 
Регистрация: 16.09.2011
Сообщений: 9
По умолчанию

Не могли бы вы просто взять и указать ссылки или код чтобы с примером я уже мог поработать и понять как всё реализовывать?
Макс2012 вне форума Ответить с цитированием
Старый 16.12.2016, 14:33   #7
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

У вас гугл сломался?
http://stackoverflow.com/questions/1...omium-embedded
http://stackoverflow.com/questions/3...um-iterate-dom
http://www.delphimaster.ru/cgi-bin/f...1364129387&n=4
p51x на форуме Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разобрать код построчно WebNightmare Помощь студентам 2 12.11.2016 18:22
Разобрать код построчно WebNightmare Помощь студентам 0 12.11.2016 02:38
Разобрать код построчно laucher Помощь студентам 1 14.10.2016 07:04
Разобрать построчно готовый код программы С# Helgha Помощь студентам 1 15.03.2016 23:16
Помошь перебрать код, под функциональный AndyLarkin JavaScript, Ajax 0 05.11.2014 17:13