Вход Регистрация
Граббер своими руками (оценка: 7)
Специально для тех кто хочет научиться писать грабберы

Итак какие фукции нам нужны
file_get_contents() - функция которой мы будем "граббить" содер жимое чужого сайта
preg_replace() - функция которой мы вырешем все лишнее (реклама дивы и тп)
str_replace() - функция которой мы будем заменять урл"ы и тп
Жертвой мы выбрали сайт http://mobkino.org
Поехали:
создаем файл index.php в него прописываем

  1. <?php
  2. //тырим содержимое сайта
  3. $file = file_get_contents("http://mobkino.org?".$_SERVER['QUERY_STRING']);
  4. // выводим его
  5. echo $file;
  6. ?>


переходим по урл/index.php и видим все содержимое сайта))
теперь просматриваем html код страницы и убираем все лишнее (рекламу и тп) оставляем только разделы

  1. <?php
  2. $file=preg_replace('|<?xml(.*?)По годам</a> </div>|is','',$file);
  3. ?>


вы наверное уже заметили что мы вырезали все от
<?xml (шапки сайта) до По годам</a></div> (начала самх разделов)


теперь создаем файл gallery.php (его пока не трогаем)
пытаясь заходить в какую нибудь категорию у вас возникает ошибка 404 тк наш урл - сайт.ру/films.php?gid=ид раздела
затем заменяем эти ссылки на наши

  1. <?php
  2. $file = str_replace('films.php','gallery.php',$file);
  3. ?>


теперь переходя в какую-нибудь категорию вы будете попадать по сайт.ру/gallery.php?gid=ид раздела
вы видете что в этом урл передается методом GET ид раздела
Используем это в файле gallery.php

  1. <?php
  2. // тырим содержимое раздела
  3. $file = file_get_contents("http://mobkino.org/films.php?gid=".$_GET['gid']."&".$_SERVER['QUERY_STRING']);
  4. // вырезаем верх сайта
  5. $file=preg_replace('|<?xml(.*?)<div class="wapstart-plus1-ad"></div>|is','',$file);
  6. // вырезаем низ сайта
  7. $file=preg_replace('|<div class="wapstart-plus1-ad-bottom"></div>(.*?)</html>|is','',$file);
  8. // меняем урсл картинок постеров
  9. $file = str_replace('<img class="poster" src="content','<img src="http://mobkino.org/content', $file);
  10. // убираем все не нужное
  11. $file = str_replace('<img src="images/red_icons/rek.gif" alt="рекомендуем" />','', $file);
  12. // заменяем урлы на наши
  13. $file = str_replace('info.php','film.php',$file);
  14. $file = str_replace('films.php?gid='.$_GET['gid'].'&start','gallery.php?gid='.$_GET['gid'].'&p',$file);
  15. // меняем название сайта на наше
  16. $file = str_replace('Mob','You',$file);
  17. $file = str_replace('Kino','Site',$file);
  18. // выодим
  19. echo $file;
  20. ?>




вот випринцепе и все)) по данному образцу мы можем "грабить" практически любой сайт (если он доступен для просмотра без авторизации)
если у вас еще возникли вопросы то задавайте))
(c) KpuTuK 2013
и пусть рука отсохнет у того кто удалил предидущую статью
Автор: * KpuTuK (Adm) / 12.02.2015 в 20:17
Просмотров: 1206
ТОП блогов | поиск | все блоги
Онлайн: 2
Реклама