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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 26.02.2010, 17:33
romingood romingood вне форума
Прохожий
 
Регистрация: 26.02.2010
Сообщения: 36
Репутация: 9
Хорошо Два вопрос от чайника по DOM

Привет всем!

Вопрос 1.

Как мне вытащить нужный текст из веб-страницы, загруженной в TWebBrowser, а конкретно из фразы <div id='divname'>нужный текст </div> ?

Бог с ним с DOM - может как-то проще вытянуть текст из слоя?

И
Вопрос 2.
В ту же тему.
Скажем так, расширенный вопрос.

Как мне, имея приложение с TwebBrowser, каким-либо образом увидеть вписок всех возможных переменных DOM в загруженной странице, в том числе формы, ссылки, слои... всё, что может быть вытащено из страницы.
в идеале в таком виде:
memo1.lines.add('Полный пусть + Название объекта DOM'+'Значение объекта');

В крайнем случае, если задача непроста - вопрос попроще. как вообще без Дельфи просмотреть дерево DOM определенной веб-страницы?

Чтобы можно было понять, как обратиться к тому или иному элементу.

Спасибо!
Ответить с цитированием
  #2  
Старый 26.02.2010, 18:23
Аватар для Kotofff
Kotofff Kotofff вне форума
Прохожий
 
Регистрация: 30.09.2008
Адрес: 46°19"сш, 39°23"вд
Сообщения: 12
Репутация: 10
По умолчанию

Вопрос 1
Код:
uses activex, mshtml;
...
...
procedure TForm1.Button3Click(Sender: TObject); 
var    
  Persist : IPersistFile; 
  Document : IHTMLDocument2; 
  b :LongBool; 
begin 
  Document :=Webbrowser1.Document as IHTMLDocument2; 
  Persist := Document as IPersistFile; 
  Persist.Save('C:\temp.htm',b); 
  Memo1.Lines.Loadfromfile('C:\temp.htm'); 
end;
Потом можно в Memo1.Text искать что угодно и как угодно.

Add

http://easyprog.ru/index.php?option=com_content&task=view&id=203&Item id=29

Последний раз редактировалось Kotofff, 26.02.2010 в 18:32.
Ответить с цитированием
  #3  
Старый 27.02.2010, 09:54
romingood romingood вне форума
Прохожий
 
Регистрация: 26.02.2010
Сообщения: 36
Репутация: 9
По умолчанию

Цитата:
Сообщение от Kotofff
Вопрос 1
Код:
uses activex, mshtml;
...
...
procedure TForm1.Button3Click(Sender: TObject); 
var    
  Persist : IPersistFile; 
  Document : IHTMLDocument2; 
  b :LongBool; 
begin 
  Document :=Webbrowser1.Document as IHTMLDocument2; 
  Persist := Document as IPersistFile; 
  Persist.Save('C:\temp.htm',b); 
  Memo1.Lines.Loadfromfile('C:\temp.htm'); 
end;
Потом можно в Memo1.Text искать что угодно и как угодно.



Эта замечательная штука вывела мне на одну строчку МЕМО в кучу весь html код. Не более того. Так и планировалось?
Если да, то моя цель вообще - более менее структурированно увидеть дерево элементов на страничке.

Примерно в таком виде:

document.forms.form1.submit value='Отправить'
document.forms.form1.input[1].value='Поле ввода'
document.links.link1.value='текст ссылки'
document.div(div_name).content='содержимое ДИВа'
document.forms.li[1]='текст на первом элементе списка'
Ну и т.п. думаю, идея понятна, что именно мне нужно.
Ответить с цитированием
Ответ


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

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

ВКонтакте   Facebook   Twitter