Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 03.10.2008, 09:59
Кодер Кодер вне форума
Активный
 
Регистрация: 25.02.2008
Сообщения: 395
Репутация: -599
По умолчанию TWebBrowser | Код элемента

Уважаемые,
В чом заключаеться проблема:
Например есть страница в интернете www.sait.ru\page.html
На этой странице имееться картинка либо форма ввода. Как можно используя компонент TWebBrowser узнать код нужного элемента сайта.

Были догадки и попытки перевести TWebBrowser в режим дизайна и выделив там нужный элемент отобразить код в TMemo но никак не получаеться.

Помогите плз!
Ответить с цитированием
  #2  
Старый 04.10.2008, 16:36
Кодер Кодер вне форума
Активный
 
Регистрация: 25.02.2008
Сообщения: 395
Репутация: -599
По умолчанию

Никто неподскажет?
Ответить с цитированием
  #3  
Старый 04.10.2008, 16:52
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,087
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Вообще, получи интерфейс IWebBrowser2, потом через него получи доступ к DOM-модели страницы, а уж в ней ищи что тебе надо. Когда-то делал такую штуку, но код не сохранился.
Ответить с цитированием
  #4  
Старый 04.10.2008, 18:49
Кодер Кодер вне форума
Активный
 
Регистрация: 25.02.2008
Сообщения: 395
Репутация: -599
По умолчанию

Из всех твоих слов чесно, ничего не понял. Если не сложно может у кого завалялся кусочек кода?
Ответить с цитированием
  #5  
Старый 04.10.2008, 19:11
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,087
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Вообще, что такое интерфейс знаешь? в смысле интерфейс COM.
TWebBrowser есть обертка над IE. Он предоставляет COM-интерфейсы.
Тебе надо получить ссылку на интерфейс IWebBrowser2. Дальше, через его методы получаешь ссылку на DOM-модель загруженной страницы. И уже в ней ищешь что тебе надо.

Что-то типа того:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  IWB : IWebBrowser2;
  IDoc : IHTMLDocument;
begin
  WebBrowser1.Navigate('www.yandex.ru');
  IWB := WebBrowser1.DefaultInterface;
  IDoc := IWB.Document As IHTMLDocument;
end;

А дальше у IDoc спрашиваешь про кишки страницы. Там все организованно в виде дерева, так что лезь в хелп.
Ответить с цитированием
  #6  
Старый 05.10.2008, 00:48
Кодер Кодер вне форума
Активный
 
Регистрация: 25.02.2008
Сообщения: 395
Репутация: -599
По умолчанию

Насчет COM знаю..а вот DOM не слыхал)

Цитата:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  IWB : IWebBrowser2;
  IDoc : IHTMLDocument;
begin
  WebBrowser1.Navigate('www.yandex.ru');
  IWB := WebBrowser1.DefaultInterface;
  IDoc := IWB.Document As IHTMLDocument;
end;

Так я делал. Неполучилось.
Напишу пример чоткий чтоб понятнее было.

Есть в html коде некие строки типа <embed parametr=N>
и каждый раз это N меняется..А надо выцепить конкретно <embed parametr=N>
Ответить с цитированием
Ответ


Delphi Sources

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

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 19:06.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025