|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Как получить HTML-код открытого окна с сайтом
Здравствуйте.
- у меня есть идентификатор открытого окна - окно: это видимо браузер с сайтом (строки с адресом нет, но внутри отображается подгруженный html-код) подскажите, пожалуйста, как решить такую задачу: -мне надо получить в виде текста (StringList, например) содержимое окна (ну как если бы я нажал на окне правую клавишу и нажал "Посмотреть html код" - вот нужен этот код в текстовом виде) Заранее спасибо |
#2
|
||||
|
||||
А какой браузер используйте?
Я знаю, что в opera нужно кликнуть пкм и выбрать "исходный код" (но тогда Вам покажет весь код страницы. Отдельные блоки разделены тегами типа <frame src="">//код</frame>) |
#3
|
|||
|
|||
Открывает видимо браузер по умолчанию (Chrome или IE) - как я понял, там отрабатывает javascript.
Собственно мне нужен весь код страницы. |
#4
|
|||
|
|||
Задача свелась к простому узнаванию URL, который грузит окно.
Знает кто-нибудь, как, зная дескриптор окна, получить URL этого окна (строки с адресом нет), который грузится внутри этого окошка - оно ведь как то запрос делает (если нажать на правую клавишу и посмотреть свойства, то там прям есть Адрес URL и его значение --- то есть может как то до свойств она добраться можно)? |
#5
|
||||
|
||||
Как вариант - снять дамп и ковыряться в нем, а так воще хз, может если сообщения слать в браузер, чо-то выйдет.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#6
|
|||
|
|||
Цитата:
Код:
uses windows, ddeman, ...... function Get_URL(Servicio: string): String; var Cliente_DDE: TDDEClientConv; temp:PChar; begin Result := ''; Cliente_DDE:= TDDEClientConv.Create( nil ); with Cliente_DDE do begin SetLink( Servicio,'WWW_GetWindowInfo'); temp := RequestData('0xFFFFFFFF'); Result := StrPas(temp); StrDispose(temp); //<<-Предотвращаем утечку памяти CloseLink; end; Cliente_DDE.Free; end; procedure TForm1.Button1Click(Sender); begin showmessage(Get_URL('Netscape')); или showmessage(Get_URL('IExplore')); end; |
#7
|
|||
|
|||
Internet Explorer_Server
to icsander:
Не совсем понял, в а где в приведенном коде надо указать хендл окна? И вот еще момент --- в этом окне мне удалось добраться до объекта "Internet Explorer_Server". Может быть это как-то упростит ситуацию получения URLа? |
#8
|
|||
|
|||
|