Модуль граббер контента

Тема в разделе "ExpressionEngine", создана пользователем bobkli, 25 окт 2012.

  1. bobkli

    bobkli Местный

    Регистр.:
    2 ноя 2007
    Сообщения:
    690
    Симпатии:
    116
    Ребята только начал изучать ЕЕ
    возник вопрос есть ли для этого движка модуль граббер контента?
     
  2. webed

    webed Постоялец

    Регистр.:
    18 июн 2008
    Сообщения:
    64
    Симпатии:
    5
    В паблике никогда не видел. Гугл выдавал на тему много мусора, но ничего конкретного нет.Видимо не популярен на нашем континенте этот движёк:)
     
  3. parsac

    parsac Создатель

    Регистр.:
    30 дек 2011
    Сообщения:
    33
    Симпатии:
    47
    В соседней теме выкладывался Importer
     
  4. 4ksner

    4ksner Постоялец

    Регистр.:
    6 июн 2012
    Сообщения:
    146
    Симпатии:
    61
    В свое время так же задавался этим вопросом. Ни чего стоящего не нашел.
    Пришлось заказать граббер на фрилансе. А потом просто адаптировал его под разные сайты.
     
  5. bobkli

    bobkli Местный

    Регистр.:
    2 ноя 2007
    Сообщения:
    690
    Симпатии:
    116
    Можешь выложить на форуме?
     
  6. 4ksner

    4ksner Постоялец

    Регистр.:
    6 июн 2012
    Сообщения:
    146
    Симпатии:
    61
    Полностью выкладывать не буду, т.к. если вы ни чего не смыслите в PHP, самостоятельно под свой сайт вы скрипт не переделаете. Иначе вам не составит труда написать парсер самому.

    В функцию передаются спарсенные параметры, такие как, заголово/УРЛ заголовка/УРЛ изображения/Текст статьи/Код видео/дата и время публикации статьи.
    PHP:
    function Insert_in_DB($title$url_title$url_img$text$code$day$month$year$hour$min)
    {
     
        
    $db = new mysqli('хост''имя_пользователя''пароль''имя базы');
        
    $db->select_db('имя_базы');
        
    $db->query('SET NAMES utf8');
        if (
    mysqli_connect_errno()) {
            echo 
    "Ошибка: Не удалось установить соединение с базой данных";
            exit;
        }
     
        
    $title addslashes($title);
        
    $text addslashes($text);
     
        
    $query_id "select entry_id from exp_weblog_data order by entry_id desc limit 10";
     
        
    $result $db->query($query_id);
     
        
    $row $result->fetch_assoc();
        
    $id $row['entry_id'];
     
        
    $id++;
     
        
    // Добавление в таблицу DATA
     
        
    $query_add "insert into exp_weblog_data (entry_id, site_id, weblog_id, field_id_8, field_ft_8, field_id_9, field_ft_9, field_id_10, field_ft_10, field_id_20) values
        ('"
    .$id."', 1, 6, '".$code."', 'none', '".$url_img."', 'none', '".$text."', 'none', 'источник.ру')";
     
        
    $result $db->query($query_add);
     
        
    $hour = (int)$hour;
        
    $hour -= 3;
        
    $min rand(059);
        
    $sec rand(059);
        
    $unix_date mktime($hour,$min,$sec,$month,$day,$year);
     
        
    $now date('YmdHis');
     
        
    // Добавление в таблицу TITLES
     
        
    $query_add "insert into exp_weblog_titles (entry_id, site_id, weblog_id, author_id, ip_address, title, url_title, status, versioning_enabled, entry_date, dst_enabled, year, month, day, edit_date) values
        ('"
    .$id."', 1, 6, 1, '8.8.8.8', '".$title."', '".$url_title."', 'open', 'y', '".$unix_date."', 'y', '".$year."', '".$month."', '".$day."', '".$now."')";
     
        
    $result $db->query($query_add);
     
        
    $db->close();
     
    }
    Обращаю внимание, что у вас будут свои поля для добавления.


    Чтобы передавать параметры в функцию, их нужно спарсить. Т.к. я слаб в PHP использовал простую библиотеку Simple HTML DOM (в интернете много примеров с его использованием).
     
  7. pinnokio

    pinnokio Постоялец

    Регистр.:
    20 фев 2012
    Сообщения:
    71
    Симпатии:
    5
    Возможно, для некоторых вариантов подойдет модуль DataGrab
    Можешь здесь глянуть