Уникализация контента - Форум успешных вебмастеров - GoFuckBiz.com - Страница 2
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB90.2486
BTC/USD69263.1516
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 02.06.2012, 13:54
Start Post: Уникализация контента 
  #11
Behe
Member
 
Регистрация: 29.07.2010
Сообщений: 95
Бабло: $47760
Arrow

Текст англоязычный , ПХП скриптом собирается, надо налету уникализировать.

Подскажите идею, как сделать текст более менее уникальным

или скрипт на ПХП
или сервис по уникализации хороший
Behe вне форума  
Старый 06.07.2012, 00:21   #12
Cookie Monster
prospera
 
Аватар для Cookie Monster
 
Регистрация: 03.01.2009
Сообщений: 882
Бабло: $198348
По умолчанию

обратитесь к классике - ред баттон,
функция карлмаркс - качество офигенное, читабельность офигенная.

PHP код:
function KarlMarks($keyword$kol$pl_min FALSE$pl_max FALSE){
        
//nastart('mark');
        
global $text$keys$max_plot$min_plot$tags$nn_textlinks$urls$lang$onepage;
        global 
$nn_old$old_urls$mis$textlevel$mis_min_plot$mis_max_plot$sa;
        
        global 
$rastoiya_min$rastoiya_max$rastoiya;
        global 
$max_keeeeeeys$max_keeeys$max_keeeys_ma;
        global 
$nn_randzk;

        
        
// Синонимизация кеев
        
global $synonims;

        
// [PLTEXT-1-2-(3|4)] 
        
if (($pl_min !== FALSE) AND ($pl_max !== FALSE)) {
            
$max_keeeeeeys_PL 'on';
            
$max_keeeys_PL $pl_min;
            
$max_keeeys_ma_PL $pl_max;
        } else {
            
$max_keeeeeeys_PL $max_keeeeeeys;
            
$max_keeeys_PL $max_keeeys;
            
$max_keeeys_ma_PL $max_keeeys_ma;
        }
                    
        if (
$mis=="on") {$miss=miss($keyword); $n_miss=sizeof($miss)-1;}
        
        
$sorl=@sizeof($old_urls)-1;
            
        
        
$stext=sizeof($sa)-1;
        
$tempr=mt_rand(0$stext);
        
$temptext=$text[$tempr];
        
$tempsa=$sa[$tempr];
        
$stext=sizeof($temptext)-1;
        

        if (
$lang=="ru") {$stop=array(" а."" был."" была."" были."" было."" быть."" в."" вам."" вас."" весь."" вот."" все."" всего."" всех."" для."" дни."" днями."" до."" дык."" дял."" его."" ее."" ей."" если."" есть."" еще."" же."" за."" и."" ибо."" или."" их."" к."" как."" когда."" который."" которая."" которой."" который."" которых."" кто."" мне."" мной."" могли."" могу."" могут."" может."" мочь."" на."" не."" наш."" него."" нее."" нет."" них."" но."" о."" от.",  "об."" она."" они."" оно."" под."" при."" свое."" свой."" своя."" себя."" собой."" тогда."" так."" такой."" те."" тебя."" тем."" то."" тобой."" тогда."" того."" той."" только."" ты."" уже."" чего."" чем."" что."" чтобы."" эта."" эти."" это."" этот.");}
        else {
$stop=array();}

        for (
$p=0$p<$kol$p++){    
            
            
// цикл выбирает случайное предложение
            // и проверяет на количество слов в нём
            // если оно больше 3-х, то выходит из цикла
            
for ($v=0$v<10$v++){
                
$r1=mt_rand(0$stext);
                
$tt1=trim($temptext[$r1]); // выбираем случайное предложение
                
$t1=explode(" "$tt1); $st=sizeof($t1); 
                if (
$st>3) break 1;
            }
            
            
// поиск предложений с одинаковым (или близким к этому) кол-вом слов
            
$i2=0$raz=-100$drug=array();
            
$ssa=sizeof($tempsa)-1;
            for (
$aa=0$aa<188$aa++){
                
$a=mt_rand(0,$stext); 
                
$r=$st-$tempsa[$a]; $sdrug=sizeof($drug);
                if ((
$r>$raz) && ($r<1) && ($a!=$r1) ) {$i2=$a$raz=$r;}
                if ((
$r>-8) && ($r<1) && ($a!=$r1)  &&  ($sdrug<10)) {$drug[]=$temptext[$a];}
                if ((
$raz==0) && ($sdrug>7)) break 1;
                if (
$sdrug>8) break 1;
            }
            
$drug[]=$temptext[$i2]; $drug[]=$tt1;  $drug=array_unique($drug); 

            
$t2=trim($temptext[$i2]);
            
$t2=explode(" "$t2);
            
$st2=sizeof($t2)-1;
            
            
reset($drug);
            while (list (
$key$val) = @each ($drug)) {
                
$drug2[]=$val;
            }
            
$drug=$drug2; unset($drug2);
            
$sdrug=sizeof($drug)-1;
            for (
$a=0$a<$st$a=$a+$textlevel){
                    
$t=mt_rand(0,$sdrug);
                    
$d=@explode(" "$drug[$t]); 
                    for (
$x=0$x<$textlevel;$x++){
                
// сбор слов в предложение. Добавим запятую?
                
                // сложный способ добавления
                    
if ((isset($d[$a+$x]) === FALSE) OR ($d[$a+$x] == '')) {
                    
//    $x = ($x == 0) ? $x : $x - 1;
                        
continue;
                    }
                
                
// посмотрим на эффект?
                //    echo '<font color="red">' , $d[$a+$x] , '</font> | ';
                
                    
$slog trim($d[$a+$x]) . ' ';
                
                    if (
                    (
strpos($slog'котор') !== FALSE) OR 
                    (
strpos($slog'что') !== FALSE) OR
                    (
strpos($slog'затем') !== FALSE) OR
                    (
strpos($slog'либо') !== FALSE) OR
                    (
strpos($slog'если') !== FALSE)
                    
                    ) {
                        @
$slovo .= ', ' $d[$a+$x];
                    } else {
                        @
$slovo .= ' ' $d[$a+$x];
                    }
                    
                    unset(
$slog);
                    }
                    @
$te.=$slovo;
                    unset(
$d); unset ($slovo);
            }
            
$te=trim($te).". ";
            unset(
$drug); unset($tt1);
        }
        
$te=str_replace($stop". "$te);
        
$te=str_replace(",.""."$te);
        
$te str_replace(array(' , '',,'), ''$te);

        
// ПОШЛА, ПОШЛА РОДИМАЯ! У-У-УХ!
        
$itog=array();
        
$itog=explode(" "$te);
        
$sitog=sizeof($itog)-1;

        
// KEYWORDS
        
$plot=mt_rand($min_plot$max_plot); // рэндомная плотность
        
$dnorm=ceil(($plot $sitog) / 100);    // количество вставляемых кейвордов

        
$tags_s sizeof($tags) - 1;
        
        
    
// средний метод вставки
    //    $dnorm = ($dnorm > 6) ? $dnorm / 2 : $dnorm;
        
$rand 1;
        
$tag1 '';
    
        
$keys_m 0;
        

    if ((
$max_keeeeeeys_PL != '') AND ($max_keeeys_PL !== FALSE) AND ($max_keeeys_ma_PL !== FALSE)) {
        
$keeeeys mt_rand($max_keeeys_PL$max_keeeys_ma_PL);
    } else {
    
        if (
$max_keeeeeeys == 'on') {
            
$keeeeys mt_rand($max_keeeys$max_keeeys_ma);
        }

    }

    
// киворд с урлом ;)
    
$keywordOld $keyword;
    
$repltg = array('<a href="''href''<a ''</a>');
    
$keyword str_replace($repltg''strip_tags($keyword));
    
    
// Сделаем текст без кейворда? Спросите: "зачем?", а за  тем,
    // чтоб в маленьких блоках без палева вставлять его.
    
if (($keyword !== 'АРАКАДАБРА') OR ($keyword != 0)) {
    
    
    
// Синонимайзер кеев в тексте
        
        
$Okey $keyword;        
        
        
$syniy FALSE;
        
$syniy_key FALSE;
        
        if (
$synonims !== FALSE) {
        
$key_array explode(' '$keyword);
        
        foreach (
$key_array AS $keyGG) {
            
$keyyyy str_replace(
            array(
'.'',''!''?''#''"'"'"'$''%''^''&''*''('')'),
            
''strtolower($keyGG));
            
            if (
strlen($keyyyy) <= 3)
                continue;
        
                if (isset(
$synonims[$keyyyy])) {
                
                    
$syniy explode(','$synonims[$keyyyy]);
                    
$syniy_s sizeof($syniy) - 1;
                    
$syniy_key '#' str_replace('#'''$keyGG) . '#i';
                    break 
1;
                }
        }
        
        unset(
$key_array);
        }

        for (
$i=0$i<$dnorm$i++){
            if ((
$max_keeeeeeys == 'on') AND ($keys_m >= $keeeeys)) {
                break 
1;
            }
            
        if ((
$nn_randzk == 'on') AND (mt_rand(0,2) == 1) AND (strstr($keyword' ') !== FALSE)) {
            
$metka true;
        } else {
            
$metka false;
        }
            
        if (
$metka) {
            
$keyword explode(' '$keyword);
            
shuffle($keyword);
            
$keyword implode(' '$keyword);
        }
                
        if (
$syniy_key !== FALSE) {
        
            if (
mt_rand(0,3) == 2) {
                
$keyword preg_replace($syniy_key$syniy[mt_rand(0$syniy_s)], $keyword1);
            
//    exit($keyword);
            
}        
        }
        
        
// расстояние между ключиками
        
if($rastoiya == 'on') {
            
$otdal mt_rand($rastoiya_min$rastoiya_max); // отдалённость в ___СЛОВАХ___
        
}
        
            
$tag $tags[mt_rand(0$tags_s)]; // @
            
                
if (($tag1 == $tag) AND ($tags_s 2)) {
                    while (
TRUE) {
                        if ((
$tags_s == 1) OR ($tags_s == 0))
                            break 
1;
                        
                        
$tag $tags[mt_rand(0$tags_s)];
                            if (
$tag != $tag1) {
                                break 
1;
                            }
                    }
                }
                
            
$tag1 $tag;
            
            if (empty(
$tag)) {
                
$t11 $keyword;
            } else {
                if (
$tag == 'abbr') {
                    
$keyword1 explode(' '$keyword);
                    
$keyword1_s sizeof($keyword1) - 1;
                    
                    
$dop ' title="' $keyword1[mt_rand(0$keyword1_s)] . '"';
                } else {
                    
$dop '';
                }
            
                
$t11="<" $tag $dop ">" $keyword '</' $tag '>';
            }
            
        
// средний метод вставки
        // расстояние между ключиками
        
if($rastoiya == 'on') {
        
$rand += $otdal;
        
            if (
$rand >= $sitog) {
                break 
1;
            }
        
        
$itog[$rand] = $t11;
        } else {
        
        
// стандартный метод вставки ключиков    
            
$itog[mt_rand(1$sitog)] = $t11;                        
        }
        
            unset(
$tag$t11); // , $rand1
            
                
if ($max_keeeeeeys == 'on') {
                    
$keys_m++;
                }
                
                if ((
$syniy_key !== FALSE) OR ($metka === TRUE)) {
                    
$keyword $Okey;
                }
                
        }

        
// OPECHATKI
        
if (@$miss){
        
$plot=mt_rand($mis_min_plot$mis_max_plot);
        
$dnorm=ceil($plot*$sitog/100);
        for (
$i=0$i<$dnorm$i++){
            
$t11=$miss[mt_rand(0$n_miss)];
            
$itog[mt_rand(1$sitog)]=$t11;
        }
        }
        
        
        
// LINKI
        
if ($nn_textlinks=="on"){
            
$rl=rand(01);
            
$orl=rand(0,1);
            for (
$i=0$i<$rl$i++){
                if ((
$nn_old=='on') && ($orl==1) && ($sorl>2)){
                    
$au=@$old_urls[mt_rand(0$sorl)][0]; 
                } else {
                    
$au=@$urls[mt_rand(0, (sizeof($urls)-1))][0]; 
                }
                
$itog[mt_rand(1$sitog)]=$au
            }
        }
    }
                
        
$itext=implode(" "$itog);
        
$itext=trim($itext" .,-").".";
        
$itext=str_replace('  '' '$itext);
    if (
$keyword != $keywordOld) {
        
$itext str_replace($keyword$keywordOld$itext);
    }
        
//nastop('mark');
        
return $itext;

Cookie Monster вне форума  
Старый 08.07.2012, 15:00   #13
Behe
Member
 
Регистрация: 29.07.2010
Сообщений: 95
Бабло: $47760
ТС -->
автор темы ТС По умолчанию

Cookie Monster, большое спасибо !
Behe вне форума