Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Взять картинки удалённо с сайта и загрузить на сервер.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
koka
Отправлено: 30 Августа, 2010 - 16:24:39
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




Здравствуйте. Хочу взять данные из этого каталога - http://alfeco[dot]ru/catalog . Добавляю информацию о каждой защите сам, но нет никакого желания копировать все фотографии вручную.

То есть мне нужна не просто загрузка картинки по url. Я хочу, чтобы скрипт прошёлся по всем защитам и сохранил картинки для каждой защиты, например, 30.16_1.jpg
30.16 - это номер защиты, 1 - номер фотографии для данной защиты.
Первый вопрос - как взять первые 5 символов, заключенные между тегами h2 (r сожалению, в регулярных выражениях пока ничего не понимаю)
CODE (html):
скопировать код в буфер обмена
  1. <h2>30.16 Audi A6  C4 1994-1997 кроме - 2,0; 2,5 D картера</h2>

Во-вторых, я когда сохранял изображения вручную, отдельно сохранял приписку _small, например 30.16_1_small.jpg для ссылки на миниатюру изображения.

Вообщем, подскажите, пожалуйста, как можно автоматически скриптом извлечь адреса изображений (что надо будет вырезать отдельный кусок регулярными выражениями я уже понял), сохранить себе на сервер и проставить автоматически названия.

К сожалению, я так и не смог представить, как это можно сделать Огорчение

(Отредактировано автором: 30 Августа, 2010 - 16:29:34)



-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
movEAX
Отправлено: 30 Августа, 2010 - 21:40:42
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 750
Дата рег-ции: Авг. 2009  


Помог: 16 раз(а)




koka пишет:
(r сожалению, в регулярных выражениях пока ничего не понимаю)

Самое время начать! Я тоже одно время ничего в них не смыслил, до тех пор пока мне срочно не понадобилось написать граббер для 8 сайтов, вот так за недельку на шишках научился.

PHP:
скопировать код в буфер обмена
  1. define('WWW', 'http://www.alfeco.ru');
  2. $html = file_get_contents('http://www.alfeco.ru/catalog');
  3. preg_match_all('@href="(?P<url>/catalog/[^"]+?)"@', $html, $matches );
  4.                                        
  5. foreach( $matches['url'] as $url){
  6.     $html =  file_get_contents ( WWW.$url );
  7.     preg_match_all('@href="(?P<url>'.$url.'[^"]+)@', $html, $protects );
  8.     foreach ($protects['url'] as $protectUrl){
  9.        $html =  file_get_contents(WWW.$protectUrl);
  10.         preg_match_all('@href="(?P<imgs>/content/setup/pics[^"]+)"@', $html, $imgs);
  11.         print_r($imgs['imgs']);
  12.     }
  13. }


Данная реализация выводит все изображения с каждой страницы "защиты".
Твое домашнее задание:
+ из этой какашки сделать конфетку, ибо скрипт на скорую руку набросал(разбить на функции, дать переменным более осмысленные имена и т.д.)
+ разобраться как это все работает
+ допилить под свои нужды
+ не забудь указать set_time_limit()
ps: возможно тебе понадобятся: FireBug, XDebug

(Отредактировано автором: 30 Августа, 2010 - 21:44:52)



-----
армия.. самое убогое место
 
 Top
koka
Отправлено: 31 Августа, 2010 - 10:27:00
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




movEAX пишет:
ps: возможно тебе понадобятся: FireBug, XDebug

Спасибо большое!!! Обязательно займусьэтим при первой возможности. И такой вопрос: что такое firebug или xdebug???


-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
garvey
Отправлено: 31 Августа, 2010 - 10:44:28
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 528
Дата рег-ции: Май 2010  
Откуда: Minsk


Помог: 3 раз(а)




Firebug - дополнение для FireFox, которое позволяетотслеживать работу веб-приложения (просматривать входящие данные, отлавливать ошибки, следить за временем выполнения). Не пользовался XDebug, но думаю, что это практически то же самое.
 
 Top
Viper
Отправлено: 31 Августа, 2010 - 10:45:00
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)






-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
movEAX
Отправлено: 31 Августа, 2010 - 14:56:43
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 750
Дата рег-ции: Авг. 2009  


Помог: 16 раз(а)




FireBug, как уже сказали выше, плагин для лисы, им очень удобно подсматривать какие либо данные на страничке, в твоем случае им можно подсмотреть src у нужной тебе картинки, при этом тебе не надо рыться в исходном коде странички. О нем даже книга вышла) На ютубе есть пару уроков.

XDebug - обыкновенный отладчик, но для PHP. Можно ставить бряки ( breakpoint ), просматривать содержимое переменных, трассировать скрипт.
http://xdebug[dot]ru - тут пару статей. Рекомендую для работы с ним NetBeans 6.9, т.к. настраивать практически ничего не надо.


-----
армия.. самое убогое место
 
 Top
koka
Отправлено: 31 Августа, 2010 - 16:34:08
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




Спасибо за информацию, заинтересовал меня firebug, наверное, его установлю. А так меня вполне устраивает PSPad, особенно его возможность работать по ftp. Может также стоит попробовать opera dragonify, внешне мне она очень понравилась.


-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB