Как научится писать грабы?

Печать RSS
402

Д
Автор
Пришелец
0
писать грабы? а то мне надоело всех просить чтоб сделали, п0дскажите, мне говорили тут была статья как делать!

Голубые штаны
0
вот сервис грабов: http://xwen.ru/master/kg/
по аналогии с ним можно немного научиться...
принцип прост! значению какой либо переменной(в основном делают $file) присваивается полностью вся какая либо страница! затем методом замены командой: str_replace удаляются ненужные элементы...
самый лучший способ самому научиться делать грабы так ето взять готовый граб и поглядеть как он состоит! впринципе не оч сложно... но на бесплатный хостах такая весч не всегда пашет!

Голубые штаны
0
например вот так:
<?php
$file=file_get_contents('http://visavi.net?'.$_SERVER['QUERY_STRING']);
$file=str_replace('http://visavi.net/images/img/logo.png','http://www.google.ru/images/nav_logo7.png',$file);
echo $file;
?>
заменяется логотип висави на логотип гугла... как пример)
затем если хочеш какой либо вообще убрать со страницы то делай тип так:
$file=str_replace('http://visavi.net/images/img/logo.png','',$file);
то есть убирается вообще логотип на висах...
а можно вообще убрать весь етот элемент где логотип стоит, заменяя строку:
$file=str_replace('<div class="a" id="up"><img src="http://visavi.net/images/img/logo.png" alt="image" /><br />Мир Скриптов </div>','',$file);
на пустоту smile
в самом конце вся ета переменная $file выводится в отфильтрованном виде так: echo $file;
Изменил: Андрей (10.10.2009 / 23:38)

ВЕЛИКИЙ и УЖАСНЫЙ!
0
да и смотря что грабить собираешься. Надо с чего-нидь простого начинать, новости какие-нидь там или ещё чё

Голубые штаны
0
есть еще функция preg_replace в которой как я понял можно заменять не по одному какомунить элементу... а задать какойнибудь образец исходного кода страницы... и скрипт будет вырезать все такие значения! очень удобно если на сайте источнике стоят много ссылок или еще чего подряд тип:
<a href='http://visavi.net/forum\?'>
<a href='http://visavi.net/bygaga/?'>
<a href='http://visavi.net/chat/?'>
<a href='http://visavi.net/gests/?'>

Дух
0
smile кстати когда не знал php воще, думал там огого открывал некоторые но ничего не понимал. А потом скачал грабер какихто новостей размером в 0,5 кб.
И начал там тестировать то одно удалю то другое и проверю што получилось. Пока не узнал штоб
сделать граб надо ето
<?
$file=file_get_contents('http://siue.ru'.$_SERVER['QUERY_STRING'];
echo $file;
?>
забил в шаблоны,
потом узнал о str_replace() и был еще шаблон preg_replace() с регуляркой.
И етими 4 функциями написал клевый граббер фанка мож кто давно на визе помнят выкладывал заточен под вап мотор. Конешно прожил мало но всетаки. А уже потом когда додумался почитать маны узнал што $file ето переменная D . Вопщем к чему я веду? штобы написать граб ненадо замудрятся в пхп а просто скопируй несколько шаблонов и ими пиши.
Д
Автор
Пришелец
0
я умею открывать и вырезать, неумею только чтоб он работал когда переходиш п0 ссылкам, и сервис у мну тоже есть http://***/kgrab

Дух
0
$_SERVER['QUERY_STRING']
ето переменная служит для навигции по грабу она извлекает с адреса после ? где лежит граб и вставляет в адрес скачиваемой страници
например
<?
echo file_get_contents('http://visavi.net'.$_SERVER['QUERY_STRING']);
?>
http://tvoy-site.ru/grab/index.php?/forum/topic.php?tid=1598&
переход по такому адресу скачает текущую тему форума
$_SERVER['QUERY_STRING'] извлечет /forum/topic.php?tid=1598& и вставит в адрес скачки и унас визуально получится
<?
echo file_get_contents('http://visavi.net/forum/topic.php?tid=1598&');
?>
Ето тибе надо?
Д
Автор
Пришелец
0
о, да. а если адрес идёт типа такого
mysite.ru/go.php
mysite.ru/to.php то как быть?
Д
Автор
Пришелец
0
<?
$file = file('http://kento.ru/download'.$_SERVER['QUERTY_STRING']);
$file = implode('', $file);
echo $file;
?>
и вот что получилось g i g a c a t . r u /download
Изменил: Дмитрий (11.10.2009 / 09:46)
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск