• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Модуль RSS graber 3.1 + Синонимайзер

Статус
В этой теме нельзя размещать новые ответы.
народ а как включить сам синонимайзер? граббер поставил, в корне лежит sinonims.sql, что с ним делать?

Залить в phpmyadmin и почитать инструкцию к граберу.
А самое главное прекратить флудить в этой теме. ;)
 
Переделал словарь от ВордСина на 5000 высокочастотных слов для этого граббера, пользуюсь только им, синонимайзинг получается более-менее вменяемый, юзать вместо sinonims.sql
 
Как уже народ заметил ранее, в шаблонах граббер не распознает пробелы/переносы строк, из-за чего некоторые сайты просто невозможно нормально сграбить. Перечитал всю ветку форума, но готового исправления этого бага так и не нашел.
Вобще я стараюсь избегать переноса строк, но, было пара ссылок, где в шаблоне он встречался. У меня никаких глюков не возникало- покажите урл, попробую исправить (хотя в коде ничего страшного не нашёл, возможно просто шаблон неккоректный).

Вопрос номер три. У меня контент на сайте публикуется в виде shortstory + fullstory. Обычно в shortstory какое-то описание софтины или фильма, а в fullstory добавляю только линки на скачивание (т.е. контент дважды в оба поля не перепечатываю). Так вот в награбленых новостях в fullstory это всё совпадает и получается дубликат описания, есть ли варианты решения как это исправить? возможно за wmz.
Во первых надо посмотреть- порой вывод краткой и полной разделён (выводится разными тегами-> полная новость отделена тегами).
Но Если хочется удалить вот небольшая функция. Вырезал из другого места, но вроде работает:ah:
PHP:
function delete_dubl($txt1, $txt2_delete){
 
 $explode_arr1 = explode("\n", $txt1);
 $explode_arr2 = explode("\n", $txt2_delete); 
 $i_key= 0;
 $i_arr = array();
 $end_arr = array();
 foreach($explode_arr2 as $id_str2=>$str2){
 
  foreach($explode_arr1 as $id_str1=>$str1){ 
 
   similar_text ($str1, $str2, $p);  
    if($p>95){   //if($str ==  $explode_arr2[$id_str]){
     $i_arr[$id_str2-$id_str1]++;
     $i_key =1;
 
    }elseif($i_key){
     $i_key =0;
     $end_arr[$id_str2-$id_str1] = $id_str2;
     break;
    }
    $end_arr[$id_str2-$id_str1] = $id_str2+1; 
  }
 }
 arsort($i_arr);
 
  $fist = array_shift($i2 = $i_arr);
// $count = array_count_values($i_arr);
// if($count[$fist]>1){
 
// }else{
  $num = $end_arr[array_search($fist, $i_arr)];
// }
  if($fist == count($explode_arr1)){
 
 
  return implode("\n", array_splice($explode_arr2, 0, array_search($fist, $i_arr))).
    implode("\n", array_splice($explode_arr2, $fist)) ;  // удалить лишь повторяющуюся область
/ *
 например 
 --------SHOT
 [center][img]http://xxibek.net/uploads/posts/2009-05/1243407728_26053a64.jpg[/img][/center]
[u]Информация о фильме[/u]
[b]Название:[/b] Незваные
[b]Оригинальное название:[/b] The Uninvited
[b]Год выхода:[/b] 2009
 
 --------FULL
 [center]Клёвый филим[/center]
.. 
 [center][img]http://xxibek.net/uploads/posts/2009-05/1243407728_26053a64.jpg[/img][/center]
[u]Информация о фильме[/u]
[b]Название:[/b] Незваные
[b]Оригинальное название:[/b] The Uninvited
[b]Год выхода:[/b] 2009
..
[b]Жанр: [/b]ужасы, триллер, драма, детектив
[b]Режиссер:[/b] Чарли Гард, Томас Гард
[b]В ролях:[/b] Эмили Браунинг, Ариэль Кеббел, Дэвид Стрэтэйрн, Элизабет Бэнкс, Майя Массар, Кевин МакНалти, Джесси Мосс, Дин Пол Гибсон, Дон С. Дэвис, Лекс Бёрнэм
 
  --------REZ
 [center]Клёвый филим[/center]  
 [b]Жанр: [/b]ужасы, триллер, драма, детектив
[b]Режиссер:[/b] Чарли Гард, Томас Гард
[b]В ролях:[/b] Эмили Браунинг, Ариэль Кеббел, Дэвид Стрэтэйрн, Элизабет Бэнкс, Майя Массар, Кевин МакНалти, Джесси Мосс, Дин Пол Гибсон, Дон С. Дэвис, Лекс Бёрнэм 
 
 */  
 // return implode("\n", array_splice($explode_arr2, $num));   // выбрать лишь то, что идёт после совпадения 
 / *
 например 
 --------SHOT
 [center][img]http://xxibek.net/uploads/posts/2009-05/1243407728_26053a64.jpg[/img][/center]
[u]Информация о фильме[/u]
[b]Название:[/b] Незваные
[b]Оригинальное название:[/b] The Uninvited
[b]Год выхода:[/b] 2009
 
 
 
 --------FULL
 [center]Клёвый филим[/center]
.. 
 [center][img]http://xxibek.net/uploads/posts/2009-05/1243407728_26053a64.jpg[/img][/center]
[u]Информация о фильме[/u]
[b]Название:[/b] Незваные
[b]Оригинальное название:[/b] The Uninvited
[b]Год выхода:[/b] 2009
..
[b]Жанр: [/b]ужасы, триллер, драма, детектив
[b]Режиссер:[/b] Чарли Гард, Томас Гард
[b]В ролях:[/b] Эмили Браунинг, Ариэль Кеббел, Дэвид Стрэтэйрн, Элизабет Бэнкс, Майя Массар, Кевин МакНалти, Джесси Мосс, Дин Пол Гибсон, Дон С. Дэвис, Лекс Бёрнэм
 
  --------REZ
[b]Жанр: [/b]ужасы, триллер, драма, детектив
[b]Режиссер:[/b] Чарли Гард, Томас Гард
[b]В ролях:[/b] Эмили Браунинг, Ариэль Кеббел, Дэвид Стрэтэйрн, Элизабет Бэнкс, Майя Массар, Кевин МакНалти, Джесси Мосс, Дин Пол Гибсон, Дон С. Дэвис, Лекс Бёрнэм 
 
 */
 
 
 }else{
 
  return $txt2_delete;
 
 }
//
}
Слысл: перебираются строчки из краткой новости и полной. Если совпадений столько же, сколько и стпрочек в полной - они удаляются. Скрипт должен найти совпадения, даже если краткая новость идён не сначала (напр у меня из-за шаблона в начале вылизают   &nbsp)
4. Тоже известный баг, но его почему-то никто не пофиксил. Опубликованные новости имеют ЧПУ тип 3 _http://site.ru/2008/04/02/имя новости.html, даже когда в настройках установлен тип 2. .
Вобще-то ЧПУ никак не связан (вернее не должен) со скриптом. Какая версия двига?

+---
Ещё тут пишут\писали: сделать чтобы грабер тянул видео. Реализовать в граббере легко, НО, когда запустил скрипт понял- фильм 800мб, скорость с которой сайт отдаёт видео 50кб\с, скачается за Писец минут. -> Надо разделять граббер и скачку видео.
 
Вобще я стараюсь избегать переноса строк, но, было пара ссылок, где в шаблоне он встречался. У меня никаких глюков не возникало- покажите урл, попробую исправить (хотя в коде ничего страшного не нашёл, возможно просто шаблон неккоректный).

Вот допустим имеется такой пример новости:

как его нормально спарсить, если граббер не понимает переносы строк?

Вопрос номер три. У меня контент на сайте публикуется в виде shortstory + fullstory. Обычно в shortstory какое-то описание софтины или фильма, а в fullstory добавляю только линки на скачивание (т.е. контент дважды в оба поля не перепечатываю). Так вот в награбленых новостях в fullstory это всё совпадает и получается дубликат описания, есть ли варианты решения как это исправить? возможно за wmz.
Во первых надо посмотреть- порой вывод краткой и полной разделён (выводится разными тегами-> полная новость отделена тегами).
вставил данный код в inc/rss.php... и ничего не изменилось. Повторы так же парсятся как и раньше. В-общем, я решил наверное сделаю по-другому: совмещу в таблицах БД в fullstory краткую и полную версию новости чтобы не мучиться дальше.. Только вот проблема - 6.5K новостей в базе, нужен какой-то скрипт для этого (может кто напишет? - пишите пм)

Вобще-то ЧПУ никак не связан (вернее не должен) со скриптом. Какая версия двига?
версия двига 7.5, я же написал сразу. Новости, добавляемые через админку имеют урл site.ru/category/161263news.html , а с граббера формат имеют /год/месяц/число/новость.html

Ещё один баг, замеченный с граббером - парсит ссылки как простой текст, типа:
PHP:
<p><a title="Скачать инсталлятор программы TrueCrypt" href="http://www.truecrypt.org/downloads.php" target="_blank" rel="nofollow" onclick="javascript:urchinTracker('/outbound/www.truecrypt.org/downloads.php?ref=/');">Скачать инсталлятор программы TrueCrypt</a></p>
превращается в обычный текст Скачать инсталлятор программы TrueCrypt.
 
Вот допустим имеется такой пример новости:
как его нормально спарсить, если граббер не понимает переносы строк?
Можно ссылкой и указать сам шаблон по которому не грабится?
вставил данный код в inc/rss.php... и ничего не изменилось. Повторы так же парсятся как и раньше.
:ah: я привёл только функцию. надо было ещё вставить перед строкой

PHP:
if ($allow_news) {
вызов самой
PHP:
$full_story = delete_dubl($short_story, $full_story);
 
if ($allow_news) {
ещё, немного подработал саму функцию
PHP:
function delete_dubl($txt1, $txt2_delete){
 
 $explode_arr1 = explode("\n", $txt1);
 $explode_arr2 = explode("\n", $txt2_delete); 
 $i_key= 0;
 $i_arr = array();
 $end_arr = array();
 foreach($explode_arr2 as $id_str2=>$str2){
 
  foreach($explode_arr1 as $id_str1=>$str1){ 
 
 $str2 = trim($str2);    
 $str1 = trim($str1);
 
   similar_text ($str1, $str2, $p);  
    if($p>80 || trim($str2.$str1)==''){   //if($str ==  $explode_arr2[$id_str]){
     @$i_arr[$id_str2-$id_str1]++;
     $i_key =1;
 
    }elseif($i_key){
     $i_key =0;
     $end_arr[$id_str2-$id_str1] = $id_str2;
     break;
    }
    $end_arr[$id_str2-$id_str1] = $id_str2+1; 
  }
 }
 arsort($i_arr);
 
  $fist = array_shift($i2 = $i_arr);
// $count = array_count_values($i_arr);
// if($count[$fist]>1){
 
// }else{
  $num = $end_arr[array_search($fist, $i_arr)];
// }
  if($fist == count($explode_arr1)){
 
 echo '<b>Произвели замену</b>. Совпали все '.$fist.' строчки ';
  return implode("\n", array_splice($explode_arr2, 0, array_search($fist, $i_arr))).
    implode("\n", array_splice($explode_arr2, $fist)) ;  // удалить лишь повторяющуюся область
 /*
 например 
 --------SHOT
 [center][img]http://xxibek.net/uploads/posts/2009-05/1243407728_26053a64.jpg[/img][/center]
[u]Информация о фильме[/u]
[b]Название:[/b] Незваные
[b]Оригинальное название:[/b] The Uninvited
[b]Год выхода:[/b] 2009
 
 --------FULL
 [center]Клёвый филим[/center]
.. 
 [center][img]http://xxibek.net/uploads/posts/2009-05/1243407728_26053a64.jpg[/img][/center]
[u]Информация о фильме[/u]
[b]Название:[/b] Незваные
[b]Оригинальное название:[/b] The Uninvited
[b]Год выхода:[/b] 2009
..
[b]Жанр: [/b]ужасы, триллер, драма, детектив
[b]Режиссер:[/b] Чарли Гард, Томас Гард
[b]В ролях:[/b] Эмили Браунинг, Ариэль Кеббел, Дэвид Стрэтэйрн, Элизабет Бэнкс, Майя Массар, Кевин МакНалти, Джесси Мосс, Дин Пол Гибсон, Дон С. Дэвис, Лекс Бёрнэм
 
  --------REZ
 [center]Клёвый филим[/center]  
 [b]Жанр: [/b]ужасы, триллер, драма, детектив
[b]Режиссер:[/b] Чарли Гард, Томас Гард
[b]В ролях:[/b] Эмили Браунинг, Ариэль Кеббел, Дэвид Стрэтэйрн, Элизабет Бэнкс, Майя Массар, Кевин МакНалти, Джесси Мосс, Дин Пол Гибсон, Дон С. Дэвис, Лекс Бёрнэм 
 
 */  
 // return implode("\n", array_splice($explode_arr2, $num));   // выбрать лишь то, что идёт после совпадения 
 /*
 например 
 --------SHOT
 [center][img]http://xxibek.net/uploads/posts/2009-05/1243407728_26053a64.jpg[/img][/center]
[u]Информация о фильме[/u]
[b]Название:[/b] Незваные
[b]Оригинальное название:[/b] The Uninvited
[b]Год выхода:[/b] 2009
 
 
 
 --------FULL
 [center]Клёвый филим[/center]
.. 
 [center][img]http://xxibek.net/uploads/posts/2009-05/1243407728_26053a64.jpg[/img][/center]
[u]Информация о фильме[/u]
[b]Название:[/b] Незваные
[b]Оригинальное название:[/b] The Uninvited
[b]Год выхода:[/b] 2009
..
[b]Жанр: [/b]ужасы, триллер, драма, детектив
[b]Режиссер:[/b] Чарли Гард, Томас Гард
[b]В ролях:[/b] Эмили Браунинг, Ариэль Кеббел, Дэвид Стрэтэйрн, Элизабет Бэнкс, Майя Массар, Кевин МакНалти, Джесси Мосс, Дин Пол Гибсон, Дон С. Дэвис, Лекс Бёрнэм
 
  --------REZ
[b]Жанр: [/b]ужасы, триллер, драма, детектив
[b]Режиссер:[/b] Чарли Гард, Томас Гард
[b]В ролях:[/b] Эмили Браунинг, Ариэль Кеббел, Дэвид Стрэтэйрн, Элизабет Бэнкс, Майя Массар, Кевин МакНалти, Джесси Мосс, Дин Пол Гибсон, Дон С. Дэвис, Лекс Бёрнэм 
 
 */
 
 
 }else{
 
  echo '<b>Не нашли</b> полностью одинаковых строк. В краткой '.$fist .', а одинаковых '.count($explode_arr1);
  return $txt2_delete;
 
 }
//
}





В-общем, я решил наверное сделаю по-другому: совмещу в таблицах БД в fullstory краткую и полную версию новости чтобы не мучиться дальше.. Только вот проблема - 6.5K новостей в базе, нужен какой-то скрипт для этого (может кто напишет? - пишите пм)
это можно сделать 1 sql запросом. В пхпадмин выполни запрос
Код:
UPDATE ПРЕФИКС_post SET short_story =concat(short_story , full_story)
Вот, только нужно это тебе? Обязательно сделай дамп, тк процесс необратимый.

версия двига 7.5, я же написал сразу. Новости, добавляемые через админку имеют урл site.ru/category/161263news.html , а с граббера формат имеют /год/месяц/число/новость.html
:nezn:


Ещё один баг, замеченный с граббером - парсит ссылки как простой текст, типа:
PHP:
<p><a title="Скачать инсталлятор программы TrueCrypt" href="http://www.truecrypt.org/downloads.php" target="_blank" rel="nofollow" onclick="javascript:urchinTracker('/outbound/www.truecrypt.org/downloads.php?ref=/');">Скачать инсталлятор программы TrueCrypt</a></p>
превращается в обычный текст
С в граббере оч много недочётов. Из 100 урлов 20 требуют изменения кода.:confused: Это из-за preg шаблона ссылки в файле самого ДЛЕ parse.class.php. Я немного доработал
вроде было
PHP:
   //$txt = preg_replace( "#<a[^>]+href=[\"'](http://|https://|ftp://|ed2k://|news://|magnet:)?(\S.+?)['\"].+?" . ">(.+?)</a>#", "[url=\\1\\2]\\3[/url]", $txt );
я сделал 3 шаблона, они охватывают больше урлов

 
ДЛЕ 8.0, нулл от Мидтима.

Новости грабятся без картинок. Что делать?
 
ДЛЕ 8.0, нулл от Мидтима.

Новости грабятся без картинок. Что делать?
Т.е. в текстовом поле их уже нет? тогда это проблема в parse.class.php. Покажи урл или доработай preg шаблон сам.
 
Кто за деньги настроит грабер этот и 2-3 онлайн канала

Устанвоил 7.5 мид. Поставил грабер грабит, но синонимайзер ну не грама не срабатывает, уже раз 5 переинсталивал, кто за денежку помочь может проинсталить его что бы синонимайзер срабатывал и настроить штуки три онлайн видео.

Жду или тут напишите как связаться или в личку, спасибо.
 
Устанвоил 7.5 мид. Поставил грабер грабит, но синонимайзер ну не грама не срабатывает, уже раз 5 переинсталивал, кто за денежку помочь может проинсталить его что бы синонимайзер срабатывал и настроить штуки три онлайн видео.
Жду или тут напишите как связаться или в личку, спасибо.
в базу запрос делали?
а вообще та база что идет, никуда не годится, лучше свою добавить...
 
заметил один минус, когда при грабинге по крону, не заполняется
поле Облако тегов - тегами, хотя при ручном добавлении грабит вместе с тегами!
где можено подправить? очень нужно:bc:
 
  • Нравится
Реакции: Mons
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху