Скрипт фильтрации поискового трафа:
Код
<script>
var ref,i,is_se=0;
var se = new Array('google','msn','yahoo','yandex','rambler','aport','mail','km.ru','meta','all.by', 'tut.by','online.ua','nigma');
if(document.referrer)ref=document.referrer;
else ref="";
for(i=0;i<13;i++)
{if(ref.indexOf(se[i])>=0){is_se=1;здесь_пишем_куда_слать_поисковый_траф;}}
if(is_se==0){здесь_пишем_куда_слать_левый_траф;}
</script>
выдирания кея из реферера
Код
<script>
var r=document.referrer,t="",q;
if(r.indexOf("google.")!=-1)t="q";
if(r.indexOf("msn.")!=-1)t="q";
if(r.indexOf("yahoo.")!=-1)t="p";
if(r.indexOf("altavista.")!=-1)t="q";
if(r.indexOf("aol.")!=-1)t="query";
if(r.indexOf("ask.")!=-1)t="q";
if(t.length&&((q=r.indexOf("?"+t+"="))!=-1||(q=r.indexOf("&"+t+"="))!=-1))
key = r.substring(q+2+t.length).split("&")[0];
window.location="http://domain.url/script.cgi?parameter="+key;
</script>
удаляет дубликаты доменов в списке урлов, обязательно наличие префикса http://
или просто удаления текстовых дупликатов:
Код
<?
error_reporting(E_ALL);
set_time_limit(0);
ignore_user_abort(1);
$uri=file("url.txt");
for ($a=0;$a<count($uri);$a++){
$uri[$a]=trim($uri[$a]);
if (!$uri[$a]) continue;
$parse=parse_url($uri[$a]);
if (@!isset ($parse['host'])) echo $a;
$URI=$parse['host'];
if (!@in_array($URI,$new)) {
$new[]=$URI;
$new_uri[]=$uri[$a];
}
}
$new=implode("\n",$new_uri);
$f=fopen("url.txt","w+ t");
fwrite($f,$new);
fclose($f);
?>
заливка файлов на FTP
Код
<?php
////////////////////////////////////////////////
//Получение списка файлов //
////////////////////////////////////////////////
function get_files($dir)
{
$out=null;
$dir=$dir;
//Error_Reporting(E_PARSE);
if (is_dir($dir)) {
$fp=opendir($dir);
while($file = readdir($fp)) {
if ($file != '.' and $file !='..') {
if (is_file($dir.'/'.$file)) {
$out[]=$file;
}
}}
return $out;
}
else
{
return false;
}
}
//////////////////////////////////////////////////////////////
//Заливка файлов на фтп, из определенной папки//
//////////////////////////////////////////////////////////////
function zaliv($pach,$ftphost,$ftpport,$ftplogin,$ftppass)
{
$ftp_server=$ftphost;
$ftp_user_name=$ftplogin;
$ftp_user_pass=$ftppass;
$conn_id = ftp_connect($ftp_server);
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
if ((!$conn_id) || (!$login_result)) {
printr("Никак!");
printr("Сервер $ftp_server имя $ftp_user_name!");
return false;
} else {
printr("Успешный Коннект с $ftp_server под именем $ftp_user_name <br> ");
}
$fff=get_files($pach);
printr(count($fff));
foreach($fff as $line)
{
printr("[".$r."]");
flush();
$upload = ftp_put($conn_id, $line, $pach."/".$line, FTP_BINARY);
if (!$upload) {
printr("Незакачали файл<br />");
} else {
printr("Закачали $pach / $line на сервант $ftp_server под именем $line<br>");
}
}
printr("Все файлы закачаны на сервер $ftp_server под $ftp_user_name спасибо за слив.....<br>");
// конец
ftp_close($conn_id);
return true;
}
/////////////////////////////////////////////////////
zaliv($pach,$ftphost,$ftpport,$ftplogin,$ftppass);
?>
Чистилка списка кеев, удаления дупликатов... продвинутый..
создайте файлы:
cut_words.txt
del_words.txt
keywords.txt
Код
<?php
error_reporting(E_ALL);
set_time_limit(0);
ignore_user_abort(1);
//========================================================================
// включает/выключает (1/0) режим удаления слов
$CFG["del_words_mode"] = 1;
// включает/выключает (1/0) режим "только очистка от дублирующих строк"
$CFG["only_clear_dup_mode"] = 0;
//========================================================================
function file_to_array($file_name, $length_min, $length_max, $bool_trim)
{
$tmp_array = Array();
$out_array = Array();
if(!file_exists($file_name))
{
return FALSE;
}
$tmp_array = file($file_name);
foreach($tmp_array as $_value)
{
$value = $_value;
$value = str_replace("\r", "", $value);
$value = str_replace("\n", "", $value);
if($bool_trim)
{
$value = trim($value);
}
$vlen = strlen($value);
if($vlen >= $length_min && $vlen <= $length_max)
{
$out_array[] = $value;
}
}
return $out_array;
}
function array_to_file($inarray, $file_name, $separator)
{
$fout = fopen($file_name, "w");
if(!$fout)
{
return FALSE;
}
foreach($inarray as $value)
{
fwrite($fout, $value . $separator);
}
fclose($fout);
return TRUE;
}
function prepare_text($text_array, $del_array)
{
global $CFG;
$out_array = Array();
foreach($text_array as $line)
{
$words = explode(" ", $line);
$new_line = "";
foreach($words as $word)
{
$word = trim($word);
if($CFG["del_words_mode"])
{
$ok = 1;
foreach($del_array as $del_word)
{
$del_word = str_replace("*", "(.*)", $del_word);
//echo $del_word . " - " . $word . "\n";
if(ereg('^' . $del_word . '$', $word))
{
$ok = 0;
}
}
if($ok)
{
$new_line .= $word . " ";
}
}
else
{
$new_line .= $word . " ";
}
}
$new_line = trim($new_line);
$out_array[] = $new_line;
}
return $out_array;
}
function cut_text($text_array, $cut_array)
{
$cut_lines = Array();
$out_array = Array();
foreach($text_array as $line)
{
$ok = 0;
foreach($cut_array as $word)
{
if(strpos($line, $word) !== FALSE)
{
$ok = 1;
}
}
if($ok)
{
$cut_lines[] = $line;
}
else
{
$out_array[] = $line;
}
}
array_to_file($cut_lines, "cutlines.txt", "\n");
return $out_array;
}
$text_array = file_to_array("keywords.txt", 1, 255, 1);
$del_array = file_to_array("del_words.txt", 1, 255, 1);
$cut_array = file_to_array("cut_words.txt", 1, 255, 1);
if(!$CFG["only_clear_dup_mode"])
{
$text_array = prepare_text($text_array, $del_array);
$text_array = cut_text($text_array, $cut_array);
}
$text_array = array_unique($text_array);
array_to_file($text_array, "keywords.txt", "\n");
?>
Скрипты генерации марковских цепей на ПХП
Код
<?PHP
$fp = fopen("C:/text.txt", "r");
$text = "";
while($string = fgets($fp)) {
$string = trim($string);
$text.=$string." ";
}
echo($text);
echo "<br><hr>";
$maxgen = 1000;
$nonword = "\n";
$w1 = $nonword;
$w2 = $nonword;
$words = explode(" ", $text);
foreach( $words as $word) {
$table[$w1][$w2]["suff"][] = $word;
$w1 = $w2;
$w2 = $word;
}
$table[$w1][$w2]["suff"][] = $nonword;
$w1 = $nonword;
$w2 = $nonword;
for($i = 0; $i < $maxgen; $i++) {
$suf = $table[$w1][$w2]["suff"];
$t = array_rand($suf);
if($suf[$t] == $nonword)
exit;
echo $suf[$t]." ";
$w1 = $w2;
$w2 = $suf[$t];
}
?>