Получение HTML-кода сайта PHP-скриптом

Рубрики: на PHP  

Получить HTML-код сайта необходимо, например, при граббинге сайта. Но у меня был случай забавнее… Всем известный БашОрг забанил моего провайдера интернета за какие-то просчеты (вероятно, была дос/ддос атака от абонентов моего прова с общим IP). То есть – башорг у меня не открывался, а все остальное открывалось.

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

<?php
$file = fopen («http://bash.org.ru», «r»);
$str = «»;
while (!feof ($file)){
$str .= fread ($file, 512);
}
fclose ($file);
echo $str;
?>

Сразу уточню, что чтение сайта приведенным здесь образом возможно только в случае, если в fopen можно передать адрес страницы (файла), не находящегося на данном сервере (там же где и запускается скрипт). Это регулируется в настройках интерпретатора PHP.

Что здесь происходит? Все точно так же, как если бы нам надо было прочитать файл. Сначала открываем баш для чтения (флаг «r»). Заводим переменную $str, в которую и запишем весь сайт. Записываем в цикле данные в $str по 256 байт, пока не кончится файл (здесь – удаленная страница). Закрываем файл и выводим на экран.

P.S. Этот скрипт лежит тут: http://dimoning.ru/get_bash.php Запустив его, кто-то удивится – почему все так уродски выглядит и напоминает баш довольно отдаленно? Потому, что файл стилей (css) не читается и не подключается. Вернее – мне было просто влом это делать, для чтения он не нужен ;)



Один отзыв на «Получение HTML-кода сайта PHP-скриптом»

    Vincent пишет:

    file_get_contents(url);

    чем плох?


Оставьте свой комментарий

Теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не спамер и не робот.
Я спамер и робот!

dimoning.ru
SEO и программирование.
  • Рубрики:



  • Рассылка:

  • Дополнительно:

  • По месяцам:

  • Счетчики:

    Яндекс цитирования
  • Спонсоры:


  • dimoning.ru © 2008-2011 г.
    Все материалы авторские, но их можно копировать с указанием прямой ссылки на источник.