Частенько нужно выводить на сайте информацию с другого ресурса, нет, не «грабить» новости целиком — это не наш вариант — просто прогноз погоды, или актуальную программу ТВ выводить где-нибудь в уголочке. К примеру так:

PHP граббер
Пример работы PHP граббера

Или еще пример: между первым и вторым постом в этом блоге висит анонс последней новости с моего же сайта. Давайте посмотрим, как это работает.

<?php
 
$url = "http://URL.ru";
$unique_start = "<h3>";
$unique_end = "</h3>";
 
function weather($url, $unique_start, $unique_end) {  
$code = file_get_contents($url);  
preg_match('/'.preg_quote($unique_start,
'/').'(.*)'.preg_quote($unique_end, '/').'/Us', $code, $match);  
return $match[1];  
}
 
echo weather($url, $unique_start, $unique_end);
 
?>

Где http://URL.ru — страница, с которой будем «грабить», а h3 и /h3 — это тэги информацию между которыми выводим.

16 КОММЕНТАРИИ

  1. […] Частенько нужно выводить на сайте информацию с другого ресурса, нет, не “грабить” новости целиком — это не наш вариант — просто прогноз погоды, или актуальную программу ТВ выводить где-нибудь в уголочке. Давайте посмотрим, как это работает. Дальше […]

  2. Подскажите а как таким образом можно организовать у себя на сайте новости по определённому слову. Ну допустим названию города и в окшке на сайте все последние новости связанные с этим городом будут отображаться. Возможно ли такое?

  3. Все бы хорошо, но что делать если на странице с которой хотим получить информацию стоит редирект?

  4. Блин! Спасибо. Около часа искал, нашёл немало. Ниодин не работал. Этот — работает. Спасибо!

  5. При использовании стандартной функции:»file_get_contents()», админ сайта быстро узнает что вы у него погоду на свой сайт «копи-пастите» и если ему это не понравится ждите бана по ip.

  6. у меня не прябятся картинки и урлы так как в коде они выглядят так без домена. как настроить что бы было

    за ранее спасибо

  7. Спасибо!
    С единственной проблемой столкнулся только, мой сайт на utf-8, а сайт-донор на win-1251, в итоге граббер выбирает все как нужно но отображается это все на «албанском»
    что дописать в коде чтобы исправить эту ситуацию?

    Еще раз ОГРОМНОЕ спасибо за скрипт)

  8. Разобрался, Если кому нужно в таком виде решает именно мою проблему

    <?php
    $url = "http://www.siteatwin1251.ru&quot;;
    $unique_start = "»;
    $unique_end = «»;
    function weather($url, $unique_start, $unique_end) {
    $code = file_get_contents($url);
    $code = iconv(‘Windows-1251’, ‘UTF-8’, $code);
    preg_match(‘/’.preg_quote($unique_start,
    ‘/’).'(.*)’.preg_quote($unique_end, ‘/’).’/Us’, $code, $match);
    return $match[1];
    }
    echo weather($url, $unique_start, $unique_end); ?>

    Спасибо тебе еще раз!)

ЕСТЬ, ЧТО СКАЗАТЬ?

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь