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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.08.2015, 17:25   #1
strongmaster
 
Регистрация: 08.08.2015
Сообщений: 5
По умолчанию Простой парсер, не могу получить href из html (DOM)

Всем привет. Помогите написать простенький парсер, не могу получить href в финале.
Выдергивает все что Li, потом внутри в h3, а потом в A.

Код:
        vTags := WebBrowser1.OleObject.Document.getElementsByTagName('Li');
        n1:=vTags.Length;

        if n1>0 then
        begin

          for i1:=0 to n1-1 do
          begin
          vTags1 := vTags.item(i1).getElementsByTagName('H3');
          n2:=vTags1.Length;

            if n2>0 then
            begin

              for i2:=0 to n2-1 do
              begin
              sMemo2.Lines.Add(vTags1.item(i2).InnerHTML);
              end;

            end;

          end;

        end;
В sMemo2 получается:
Код:
<A href="http://www.google.ru/url?url=http://www.elle.ru/tests/&amp;rct=j&amp;frm=1&amp;q=&amp;esrc=s&amp;sa=U&amp;ved=0CBMQFjAAahUKEwj4n4380ZnHAhWI2SwKHdhEB2A&amp;usg=AFQjCNFKGc7G2o3Ta0OKGyFYhC8EjSKUHg" target=_blank><B>?????</B> ??????: ?????? ??????????????? <B>?????</B> ?????????, ??? <B>...</B></A>
Как получить href? Чето не пойму. Спасибо.
strongmaster вне форума Ответить с цитированием
Старый 08.08.2015, 17:39   #2
ДралсяСошибками
Форумчанин
 
Аватар для ДралсяСошибками
 
Регистрация: 31.05.2011
Сообщений: 301
По умолчанию

Возможно как-то так
Код:
sMemo2.Lines.Add(vTags1.item(i2).GetAttribute('href', 0));
ДралсяСошибками вне форума Ответить с цитированием
Старый 08.08.2015, 20:01   #3
strongmaster
 
Регистрация: 08.08.2015
Сообщений: 5
По умолчанию

Цитата:
Сообщение от ДралсяСошибками Посмотреть сообщение
Возможно как-то так
Код:
sMemo2.Lines.Add(vTags1.item(i2).GetAttribute('href', 0));
Пишет не могу сконвертировать variant of type (Null) into type (OleStr)
strongmaster вне форума Ответить с цитированием
Старый 08.08.2015, 21:10   #4
ДралсяСошибками
Форумчанин
 
Аватар для ДралсяСошибками
 
Регистрация: 31.05.2011
Сообщений: 301
По умолчанию

Код:
for i := 0 to WebBrowser1.OleObject.Document.Links.Length - 1 do Memo1.Lines.Add(WebBrowser1.OleObject.Document.links.Item(I).GetAttribute('href', 0));
ДралсяСошибками вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
простой парсер Mick_20 PHP 5 09.01.2014 16:42
DOM HTML создание таблиц net_ofg JavaScript, Ajax 0 07.06.2013 16:04
HTML - DOM exn Работа с сетью в Delphi 1 17.02.2013 11:23
[C#] Простой парсер JonMagon Помощь студентам 11 25.12.2011 15:45
HTML DOM Лубышев Работа с сетью в Delphi 8 02.09.2011 00:06