Инфо Как сделать парсер.. Сейчас научу!

Тема в разделе "DLE", создана пользователем dragonstyle, 7 июл 2009.

Информация :
Актуальная версия DataLife Engine 11.2
( Final Release v.11.2 | Скачать DataLife Engine | Скачать 11.2 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.1 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Статус темы:
Закрыта.
Модераторы: killoff
  1. dragonstyle

    dragonstyle Читатель

    Заблокирован
    Регистр.:
    17 ноя 2008
    Сообщения:
    525
    Симпатии:
    479
    Как сделать парсер.. Сейчас научу!
    Учу только парсингу с 1 страницы, чтобы было все тектово.
    Атоматическое обновление включено.
    Код:
    <?php
    $page = file_get_contents("http://zvukoff.ru/new.html");
    preg_match('/<td valign="top">(.+)<\/td>/isU', $page, $temp);
    $res = preg_replace('/<a.+>/isU', ' ', $temp[1]);
    $res = preg_replace('/<\/a>/isU', ' ', $res);
    //echo $res;
    >
    http://zvukoff.ru/new.html - взял как пример.
    Но это простой парсер..
    Чтобы встроить в dle я допиисал лишь пару строк:

    Код:
    <?php
     
    $cache_res = dle_cache("cache_res", $config['skin']); // кеширование ???
    if ( ! $cache_res ) {   // если нет
     
    $page = file_get_contents("http://zvukoff.ru/new.html");
    preg_match('/<td valign="top">(.+)<\/td>/isU', $page, $temp);
    $res = preg_replace('/<a.+>/isU', ' ', $temp[1]);
    $res = preg_replace('/<\/a>/isU', ' ', $res);
    //echo $res;
    $cache_res = $res;
     
    create_cache("cache_res", $cache_res, $config['skin']);  // вгон в кеш
    }
    // компайл
    $tpl->load_template('static.tpl');
    $tpl->set('{description}', "Новое у нас на сайте");
    $tpl->set('{static}', $cache_res);
    $tpl->set('{pages}', "");
    $tpl->compile('content');
    $tpl->clear();
    ?>
    
    Но я делаю парсеры с curl и т.д. ;) у мну не такие..
    Парсите на здоровье...

    Принимаю бесплатно спасибки)) Ведь обошлось мне 15$
    Хотя я сам себе отличный написал...
     
    kykc, scvorec, -=MaD_DoG=- и 10 другим нравится это.
  2. yavasilek

    yavasilek vasilek_gorbunok

    Регистр.:
    5 окт 2008
    Сообщения:
    1.175
    Симпатии:
    423
    и куда это надо вставлять чтоб заработало???
    Даешь инструкцию простолюдину!
     
  3. dragonstyle

    dragonstyle Читатель

    Заблокирован
    Регистр.:
    17 ноя 2008
    Сообщения:
    525
    Симпатии:
    479
    1) код в php на любую страницу
    2) в php в папку: engine/modules/
    в engine/engine.css прописатЬ:
    case "persons" :
    include ENGINE_DIR.'/modules/ваш_модуль.php';
    break;
    теперь он по адресу:
    ваш_сайт.ru/index.php?do=твой_модуль (.php не писать)
     
  4. yavasilek

    yavasilek vasilek_gorbunok

    Регистр.:
    5 окт 2008
    Сообщения:
    1.175
    Симпатии:
    423
    Правильней наверное будет так...
    Конечно спасибо за урок)) но я думал он парсить музыку будет, а не только текст...
     
    dragonstyle нравится это.
  5. dragonstyle

    dragonstyle Читатель

    Заблокирован
    Регистр.:
    17 ноя 2008
    Сообщения:
    525
    Симпатии:
    479
    Ну это вы ссылку в парсере сами еняете ведь я написал!
    дада спасибо за поправку занят просто..
     
  6. Netprostor

    Netprostor Писатель

    Регистр.:
    29 окт 2008
    Сообщения:
    9
    Симпатии:
    5
    а теги любые можно поставить?
     
  7. domeni

    domeni

    Регистр.:
    5 июн 2006
    Сообщения:
    217
    Симпатии:
    10
    Что будет, если таким образом парсить сервер, который в дауне?
    Ваш сайт просто повиснет...
     
  8. dragonstyle

    dragonstyle Читатель

    Заблокирован
    Регистр.:
    17 ноя 2008
    Сообщения:
    525
    Симпатии:
    479
    серв не будет парсится :D
     
  9. Pigini

    Pigini

    Регистр.:
    28 апр 2009
    Сообщения:
    173
    Симпатии:
    29
    очепяточка - в engine/engine.php
     
  10. Bubbles

    Bubbles

    Регистр.:
    27 июл 2007
    Сообщения:
    327
    Симпатии:
    68
    Вопрос:как изменить время кэширования?А то кэш не обновляется, а выключать не очень хочеться :)
    И ещё:как сделать вставку данного мода в шаблон, например {parser}?
     
Статус темы:
Закрыта.