Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.08.25;
Скачать: [xml.tar.bz2];

Вниз

Извращенства с WebBrowser   Найти похожие ветки 

 
Checist [root]   (2003-08-14 01:55) [0]

У меня на форме есть WebBrowser1. В нем загружена web страница, в которой всего одна картинка и больше ничего. Нужно эту картинку загрузить в Image1, а в Label1 бросить ее имя. Как бы мне это замутить. Забросьте соурс.


 
Checist [root]   (2003-08-14 02:25) [1]

Ну, чего не кто не знает? :(


 
Vulko   (2003-08-14 02:41) [2]

лучше получи сорс страницы (inHTTP.get(url):string), и в нем найди ссылку на картинку, и тем же inHTTP в поток, а поток в Image


 
Checist [root]   (2003-08-14 02:52) [3]

Соурс я допустим получил в ListBox1. Делее ищу по scr, но там ссылка может быть либо полная либо относительная - как быть.


 
Vulko   (2003-08-14 03:04) [4]

Зачем в листбокс? Надо хотя бы в мемо, а лучше в стринглист.

> но там ссылка может быть либо полная либо относительная
> - как быть.

Парсить.


 
Checist [root]   (2003-08-14 03:09) [5]

Что есть парсить?
// Чем отличается Мемо от ЛистБокса


 
Vulko   (2003-08-14 03:19) [6]

ТЕм, что листбокс - это список, а мемо многострочный редактор.

Парсить, значит если путь относит., то превратить его в абсолютный.


 
Checist [root]   (2003-08-14 03:21) [7]

Ну, и как это проделать?


 
Vulko   (2003-08-14 03:40) [8]

Посмотри в хелпе Insert - и всё станет ясно.


 
SergP   (2003-08-14 03:44) [9]

Кто-то (не помню кто) предлагал делать таким образом (я просто повторю что он написал):

var
Doc: Variant;
src: String;
begin
Doc := WB.DefaultInterface.Document;
src := Doc.images.item(0, "").src;
end;

после этого в src должена быть абсолютная ссылка.


 
Checist [root]   (2003-08-14 03:46) [10]

WB.DefaultInterface.Document - это что?


 
Vulko   (2003-08-14 03:56) [11]

WebBrowser.DefaultInterface.Document - это вроде оле объект...


 
Checist [root]   (2003-08-14 04:01) [12]

Ага, значит на форме должен быть WebBrowser - понял.
А вот еще - зная адресс картинки могу я ее загрузить из куков, или сам Win при запросе сунет мне ее?

Зы - в WebBrowse должнабыть загружена данная веб страница


 
SergP   (2003-08-14 04:27) [13]


> Checist [root] (14.08.03 01:55)
> У меня на форме есть WebBrowser1. В нем загружена web страница,
> в которой всего одна картинка и больше ничего. Нужно эту
> картинку загрузить в Image1, а в Label1 бросить ее имя.
> Как бы мне это замутить. Забросьте соурс.


> Checist [root] (14.08.03 04:01) [12]
> Ага, значит на форме должен быть WebBrowser - понял.
> А вот еще - зная адресс картинки могу я ее загрузить из
> куков, или сам Win при запросе сунет мне ее?
>
> Зы - в WebBrowse должнабыть загружена данная веб страница


Почитай свой первый пости последний.
Ты же сам пишешь что на форме есть TWebBrowser, и что в него загружена страница, а в последнем спрашиваешь или должен быть TWebBrowser и или в него должна быть загружена страница....!!!!

А насчет того чтобы загрузить картинку из темпорарей - не знаю. Загрузи ее заново из инета.
Правда смотря для чего ты хочешь использовать то о чем спрашиваешь. А то есть такие сайты, которые при каждой загрузке картинки меняют ее. Ну вобщем ты понял о чем это я...

Есть еще вариант копирования содержимого TWebBrowser в TImage.
Типа получаем в TImage копию того что видем в TWebbrowser"е.

Вот нашел кусок кода что я использовал в одной из своих прог.

procedure TForm1.getbrimage;
var
ViewObject: IViewObject;
begin
try
Webbrowser1.Document.QueryInterface(IViewObject, ViewObject);
try
ViewObject.Draw(DVASPECT_CONTENT, 1, nil, nil, Self.Handle,
image1.Canvas.Handle, nil, nil, nil, 0);
finally
ViewObject._Release;
end;
except
end;
image1.Refresh;
end;


 
Vulko   (2003-08-14 04:29) [14]


> WebBrowse должнабыть загружена данная веб страница

да


> могу я ее загрузить из куков

в куках хранится лишь текстовая инфа...


 
Checist [root]   (2003-08-14 04:36) [15]

Спасибо, но блин грузить сново фотку это дико и долго (если их штук 20).


 
Checist [root]   (2003-08-14 04:40) [16]

Как я зная, в TIF (Temporary Internet Files)валяются все обьекты загруженные инет и картинки тоже. Так вот если картинка уще загружена могу ли я обратиться к ней в Tif, а не на узел.
Можно ли грузить в WB не саму страницу, а лишь ее хтмл код.


 
Vulko   (2003-08-14 04:42) [17]


> Спасибо, но блин грузить сново фотку это дико и долго (если
> их штук 20).


Тогда


> лучше получи сорс страницы (inHTTP.get(url):string), и в
> нем найди ссылку на картинку, и тем же inHTTP в поток, а
> поток в Image


 
Vulko   (2003-08-14 04:46) [18]


> Как я зная, в TIF (Temporary Internet Files)валяются все
> обьекты загруженные инет и картинки тоже. Так вот если картинка
> уще загружена могу ли я обратиться к ней в Tif, а не на
> узел.
> Можно ли грузить в WB не саму страницу, а лишь ее хтмл код.

Дело в том, что ie называет всё такими именами, что тебе и не снилось!!! =((((


 
Checist [root]   (2003-08-14 04:49) [19]

Посредством IHTMLImgElement.Get_href получить урл картинки - OK

При помощи GetUrlCacheEntryInfo выудить имя файла в кеше
А вот как это мутить не имею представления!


 
Checist [root]   (2003-08-14 04:56) [20]

Не пойму, что это за inHTTP ?


 
Vulko   (2003-08-14 05:25) [21]

это инди клиент.


 
SergP   (2003-08-14 10:08) [22]


> Checist [root] (14.08.03 04:40) [16]
> Как я зная, в TIF (Temporary Internet Files)валяются все
> обьекты загруженные инет и картинки тоже. Так вот если картинка
> уще загружена могу ли я обратиться к ней в Tif, а не на
> узел.
> Можно ли грузить в WB не саму страницу, а лишь ее хтмл код.


Просто отключи тогда загрузку графики и грузи. не будешь тратить трафик дважды на одну и ту же страничку. Не знаю как с TWebBrowser, но поставь себе TEmbeddedWB, там отключение графики делается очень просто.

А вообще я бы в твоем случае не пользовался бы TWebBrowser, а скачал бы сначала html, разобрал его, нашел URL картинки, если он относительный, то преобразовал бы его в абсолютный и далее скачал бы саму картинку. И для этого использовал бы TNMHTTP или его INDYйский "аналог" TidHTTP.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.08.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.009 c
1-81754
Vulko
2003-08-09 03:12
2003.08.25
Почему компилятору не нравится эта строка?


1-81796
Relaxxx
2003-08-15 12:00
2003.08.25
Как мне узнать количество дней в прошлом месяце???


8-81840
lds
2003-04-24 13:45
2003.08.25
Графика на WinAPI


1-81646
Евгений12
2003-08-09 22:20
2003.08.25
Edit в QReport


1-81789
iNew
2003-08-14 06:05
2003.08.25
Как показать прогресс копирования?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский