Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

Excel VBA, CAD, Софт, ОС, Windows, Ubuntu, Android, VPS
Win Api, Assembler, C++, Java, Pascal, Lazarus, Delphi, OpenGL, DirectX
C#, Qt, .NET, ASP.NET, Windows Forms, ADO.NET, Framework, WPF, UWP, WinRT, XAML
HTML, CSS, JavaScript, Ajax, PHP, Perl, Python, Ruby, SQL, WordPress, API, XML, JSON, ActionScript, Flash

Ответ
 
Опции темы
Старый 16.12.2016, 13:05   #1
Макс2012
 
Регистрация: 16.09.2011
Сообщений: 9
Репутация: 10
По умолчанию Построчно перебрать 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, 14:19   #2
kropotkina-alice
Участник клуба
 
Аватар для kropotkina-alice
 
Регистрация: 27.10.2014
Адрес: в России
Сообщений: 516
Репутация: 493
По умолчанию

Ну, во-первых, не "выгружается", а загружается...
А зачем кусочничать-то?
Делаем примерно так:
Код:

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, 14:33   #3
Макс2012
 
Регистрация: 16.09.2011
Сообщений: 9
Репутация: 10
По умолчанию

Цитата:
Сообщение от 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, 14:39   #4
p51x
Профессионал
 
Регистрация: 15.02.2010
Сообщений: 9,155
Репутация: 1407

icq: 216409213
По умолчанию

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

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

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

icq: 216409213
По умолчанию

У вас гугл сломался?
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 на форуме   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

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




21:21.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru