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


Автор: Dr.Death 21.3.2004, 11:39
Кто-нибудь может дать ссылку на такой скрипт, чтобы там менялись и ссылки, и пути к картинкам.

Автор: IZ@TOP 21.3.2004, 14:29
Dr.Death, а можно поподробнее?

Добавлено @ 14:31
Какие функции должны быть реализованы и т.п.

Автор: Dr.Death 21.3.2004, 15:10
Просто указываешь сайт, а он тебе его отображает вместе с картинками.

Автор: IZ@TOP 21.3.2004, 17:28
Dr.Death , а через фреймы ни как не загрузить?

Автор: Dr.Death 21.3.2004, 19:47
Нет, именно, чтобы мой скрипт все выводил и заменял так, чтобы все отображалось нормально.

Автор: IZ@TOP 21.3.2004, 20:16
Я таких не видел. Примерно представляю как это должно выглядеть, но боюсь что это очень гиморойный проект получится. Ты бы лучше сказал зачем тебе такое извращение нужно.

Автор: Dr.Death 21.3.2004, 20:49
Ну, вот видел в Инете каталоги разные есть , типа softlinks и так далее, нужно внедрить один из Интернет каталогов на сайт, причем с выводом картинок.

Автор: IZ@TOP 21.3.2004, 21:27
Ну ты загнул... то есть тебе нужно сграбить именно инфу с сайта-каталога... ? Нет таких скриптов... во всяком случае я таких не видел... придется тебе самому делать... хотя как я уже сказал, проще за это дело не браться! А если хочешь что бы у тебя на сайте была инфа с их сайта то тебе будет проще наверное поговорить с хозяевами, я где то видел подобную систему, это что то вроде Web Services rolleyes.gif

Автор: Roksalana 6.12.2006, 10:56
А что сложного то? 
Берем страничку (фопеном или курлом, кому как нравиться). Далее заменяем все относительные пути в хтмл-коде на абсолютные с префиксом сайта(за счет обратных ссылок в регулярном выражении) - вот и получилась стр с нормально работающими ссылками и отображаемыми картинками  smile 
Код

$url = 'test.ru/'; 
preg_replace ('/<a (?:.*?)>(?:.*?)<\/a>/is', $url.$1 , $page );

Или надежности ради вытаскивать все ссылки, потом в цикле проверяем действительно ли они относительные и заменяем текст в стр на текст правильной ссылки:
Код

preg_matchall ('/<a (?:.*?)>(?:.*?)<\/a>/is', $page , $my );
$n = count( $my );
for ($i=0; $i<$n; $i++)
{
     if( !eregi( 'http://' ,$my[$i] ) )
       {
           str_replace( $my[$i] , $url.$my[$i], $page);
        };
};

Ну или что то в этом роде.
По поводу правомерности и авторского права, читай на моей стр (www.elle.uz/grub) Далеко не всегда грабберы - нарушение авторского права, есть случаи когда они действительно только приносят пользу и никому не мешают. Главное честно признаваться откуда скоммуниздена инфа. Чаще всего ресурсу урона от этого нет  smile 

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