Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > скачать изображения с сайта


Автор: Pavelbej 9.4.2007, 11:37
Нужно дать программе ссылку (например - www.mysite.com) и она должна ходить по сайту и качать все изображения формата .jpg, .gif, .png, и чтобы были они определенного размера. Как можно этого добится?

Автор: Matematik 9.4.2007, 12:57
Цитата(Pavelbej @  9.4.2007,  11:37 Найти цитируемый пост)
Как можно этого добится? 

Чего конкретно?
Скачать страницу можно по разному - ищи "idhttp" по форуму
Найти ссылки в http тексте можно ф-ми pos() copy() или регулярными выражениями
Определить размер картинки, не качая ее, не получится, надо как минимум скачать заголовок файла, это уже к этому разделу не относится.

Автор: Pavelbej 9.4.2007, 13:07
Цитата(Matematik @  9.4.2007,  12:57 Найти цитируемый пост)
Чего конкретно?


Только изображения


Цитата(Matematik @  9.4.2007,  12:57 Найти цитируемый пост)
Найти ссылки в http тексте можно ф-ми pos() copy() или регулярными выражениями


Можно подробнее?


Цитата(Matematik @  9.4.2007,  12:57 Найти цитируемый пост)
Определить размер картинки, не качая ее, не получится, надо как минимум скачать заголовок файла, это уже к этому разделу не относится.


Ну тогда это потом.

Автор: iddqd 9.4.2007, 13:33
Pavelbej, что может быть подробней? Написать регулярку, чтоб находила все картинки? Проще некуда, а уж стандартные функции...

Автор: Snowy 9.4.2007, 13:36
html знаешь?
Качаешь страницу.
Находишь в тексте страницы тэги <img>
Выдёргиваешь из них урл, скачиваешь по урлу картинку.
Обычно там же могут быть прописаты размеры (width, height) и описание (alt), но не всегда и не везде.
Задача сводится к разбору html текста.

Автор: Pavelbej 9.4.2007, 18:54
Ну, легко сказать "пишешь это, делаеш то", а для того кто таким никогда не занималься это может оказатся немного сложным. Мне бы тольчок, дальше уже сам, по интуиции   smile 

Автор: Yanis 9.4.2007, 21:18
Цитата(Pavelbej @  9.4.2007,  19:54 Найти цитируемый пост)
Мне бы тольчок, дальше уже сам, по интуиции  

Если ты имел ввиду подсказку, то она уже дана Matematik-ом:
Цитата(Matematik @  9.4.2007,  13:57 Найти цитируемый пост)
Скачать страницу можно по разному - ищи "idhttp" по форуму

Ну а если про санитарно-техническое приспособление из сантехнической керамики, то ты не по адресу.

Автор: iddqd 9.4.2007, 21:25
Pavelbej, Snowy сказал не плохой вариант без регулярок. Не знаешь основные функции?
Пишу прям тут:
Код

var
 ts: TStringList;
 i, j, tmp: integer;
 s: string;
begin
 ts:=TStringList.Create('');
 for i:=0 to ts.Count - 1 do 
  begin
   tmp:=Pos('<img', ts[i]);
   if tmp>0 then
   tmp:=Pos('>', ts[i]);
   j:=1;
   repeat
    s:=s+ts[i][j];
    j++;
   until ts[i][j]='<'; 
 end;
  ts.Free;
end;


Это так.. примерно, без всякой оптимизации и не вдумываясь. Думаю, поймешь как дальше.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)