SEO scripts

Статус
В этой теме нельзя размещать новые ответы.

Extens

Постоялец
Регистрация
28 Июл 2006
Сообщения
79
Реакции
48
Небольшой сборник полезных SEO-скриптов:

-Скрипт для обработки списка кеев
-Генератор ссылок
-Удаление дубликатов доменов
-Генератор фраз (миксер)
-Ренеймер файлов
-Шифровка текста и ява-скриптов
-Чекалка PR


Здесь:
_http://rapidshare.de/files/31244245/seo_scripts.rar.html
 
для колекции скачал))
 
Скрипты не проверял.
В Semonitor'е есть модуль PR анализатор.
 
Тоже скачал поставил исразу же после установки Чекалки PR - ошибки
вместо PR

Extens написал(а):
В Semonitor'е есть модуль PR анализатор.
Вообщем то я подумал, а зачем тратить трафик на своем хостинге если таких проверялок пруд пруди...
Например: Для просмотра ссылки Войди или Зарегистрируйся
 
EvgenNikK написал(а):
Тоже скачал поставил исразу же после установки Чекалки PR - ошибки
вместо PR


Вообщем то я подумал, а зачем тратить трафик на своем хостинге если таких проверялок пруд пруди...
Например: Для просмотра ссылки Войди или Зарегистрируйся
Тогда задайтесь вопросом: зачем люди пишут софт, если подобного, как вы выразились, пруд пруди?
А эти скрипты для пользователя, просто увеличение выбора, для програмера, просто посмотреть как люди делают.
Лично я практитески не пользуюсь полностью оригинальными скриптами. Если и нахожу чтонибудь интересное, то всё равно переделываю под себя. Вот этим и ценны разные небольшие скрипты.
 
За PR checker спасибо отдельное!
 
EvgenNikK написал(а):
Вообщем то я подумал, а зачем тратить трафик на своем хостинге если таких проверялок пруд пруди...
Да, только вот бывают сервера с этими проверялками лежат очень долго или просто банят тебя за превышение определенного кол-ва запросов, поэтому лучше скрипты положить к себе
 
Вот, специалисты по PHP, взгляните на код по определению ТИЦ и PR.
Может пригодится. ;)

PHP:
Определение индекса цитирования php

<?
function yandex($url){
    $newurl = str_replace("http://","",$url);
    $pcy = "http://search.yaca.yandex.ru/yca/cy/ch/".$newurl."/";
    $ind = join("",File("$pcy"));
    $pos = strpos($ind,"Кто ссылается");
    $kusok = substr($ind,$pos);
    ereg('[[:digit:]]+</a>',$kusok,$res);
    if(Isset($res[0])){
        $cy = str_replace("</a>","",$res[0]);
    }else{
        $cy = 0;
    }
    return $cy;
}
?>
1 
Определение PageRank php

<?
define('GOOGLE_MAGIC', 0xE6359A60);

function zeroFill($a, $b){
    $z = hexdec(80000000);
    if ($z & $a){
        $a = ($a>>1);
        $a &= (~$z);
        $a |= 0x40000000;
        $a = ($a>>($b-1));
    }else{
        $a = ($a>>$b);
    }
    return $a;
}

function mix($a,$b,$c) {
    $a -= $b; $a -= $c; $a ^= (zeroFill($c,13));
    $b -= $c; $b -= $a; $b ^= ($a<<8);
    $c -= $a; $c -= $b; $c ^= (zeroFill($b,13));
    $a -= $b; $a -= $c; $a ^= (zeroFill($c,12));
    $b -= $c; $b -= $a; $b ^= ($a<<16);
    $c -= $a; $c -= $b; $c ^= (zeroFill($b,5));
    $a -= $b; $a -= $c; $a ^= (zeroFill($c,3));
    $b -= $c; $b -= $a; $b ^= ($a<<10);
    $c -= $a; $c -= $b; $c ^= (zeroFill($b,15));
    return array($a,$b,$c);
}

function GoogleCH($url, $length=null, $init=GOOGLE_MAGIC){
    if(is_null($length)){
        $length = sizeof($url);
    }
    $a = $b = 0x9E3779B9;
    $c = $init;
    $k = 0;
    $len = $length;
    while($len >= 12){
        $a += ($url[$k+0] +($url[$k+1]<<8) +($url[$k+2]<<16) +($url[$k+3]<<24));
        $b += ($url[$k+4] +($url[$k+5]<<8) +($url[$k+6]<<16) +($url[$k+7]<<24));
        $c += ($url[$k+8] +($url[$k+9]<<8) +($url[$k+10]<<16)+($url[$k+11]<<24));
        $mix = mix($a,$b,$c);
        $a = $mix[0]; $b = $mix[1]; $c = $mix[2];
        $k += 12;
        $len -= 12;
    }
    $c += $length;
    switch($len){
        case 11: $c+=($url[$k+10]<<24);
        case 10: $c+=($url[$k+9]<<16);
        case 9 : $c+=($url[$k+8]<<8);
        case 8 : $b+=($url[$k+7]<<24);
        case 7 : $b+=($url[$k+6]<<16);
        case 6 : $b+=($url[$k+5]<<8);
        case 5 : $b+=($url[$k+4]);
        case 4 : $a+=($url[$k+3]<<24);
        case 3 : $a+=($url[$k+2]<<16);
        case 2 : $a+=($url[$k+1]<<8);
        case 1 : $a+=($url[$k+0]);
    }
    $mix = mix($a,$b,$c);
    return $mix[2];
}

function strord($string){
    for($i=0;$i<strlen($string);$i++){
        $result[$i] = ord($string{$i});
    }
    return $result;
}

function get_pr($url){
    $result=array("",-1);

    if(($url.""!="")&&($url.""!="http://")):
        if(substr(strtolower($url),0,7)!="http://"):
            $url="http://".$url;
        endif;

        $url="info:".$url;
        $checksum=GoogleCH(strord($url));
        $google_url=sprintf("http://www.google.com/search?client=navclient-auto&ch=6%u&features=Rank&q=".$url,$checksum); // url to get from google

        $contents="";

        $handle = fopen($google_url, "rb");
        $contents = '';
        while(!feof($handle)){
            $contents.= fread($handle, 8192);
        }
        fclose($handle);
        $p=explode(":",$contents);
        if(isset($p[2])):
            $result[1]=$p[2];
        endif;
    endif;
    return $result;
}

function google_pr($url){
  global $db;
    if(eregi('^http://www.',$url)){
        $url_www = str_replace('http://www.','http://',$url);
    }else{
        $url_www = str_replace('http://','http://www.',$url);
    }
    $pr=get_pr($url);
    $output=$pr[0];
    $pagerank=$pr[1];
    sleep(1);
    $pr=get_pr($url_www);
    $output_www=$pr[0];
    $pagerank_www=$pr[1];
    if($pagerank<$pagerank_www){
        $pagerank=$pagerank_www;
    }
    if ($pagerank==-1) {
        $pagerank=0;
    }
    return intval($pagerank);
}
?>
Взял здесь: _http://gofman.name/pr/code.php

Добавлено через 12 минут
А вот еще чекер PR:

PHP:
This function will calculate and return the Google PageRank of the specified input URL as a string.

<?php
echo google_pagerank('http://www.nutang.com'); // output: 5
?>


Source Code

<?php

function google_pagerank($url) {

    /* 
    This code is released unto the public domain 
    Raistlin Majere euclide@email.it 
    */

    define('GOOGLE_MAGIC', 0xE6359A60);
    
    //unsigned shift right
    function zeroFill($a, $b)
    {
    $z = hexdec(80000000);
    if ($z & $a)
    {
    $a = ($a>>1);
    $a &= (~$z);
    $a |= 0x40000000;
    $a = ($a>>($b-1));
    }
    else
    {
    $a = ($a>>$b);
    }
    return $a;
    }
    
    function mix($a,$b,$c) {
    $a -= $b; $a -= $c; $a ^= (zeroFill($c,13));
    $b -= $c; $b -= $a; $b ^= ($a<<8);
    $c -= $a; $c -= $b; $c ^= (zeroFill($b,13));
    $a -= $b; $a -= $c; $a ^= (zeroFill($c,12));
    $b -= $c; $b -= $a; $b ^= ($a<<16);
    $c -= $a; $c -= $b; $c ^= (zeroFill($b,5));
    $a -= $b; $a -= $c; $a ^= (zeroFill($c,3)); 
    $b -= $c; $b -= $a; $b ^= ($a<<10);
    $c -= $a; $c -= $b; $c ^= (zeroFill($b,15));
    
    return array($a,$b,$c);
    }
    
    function GoogleCH($url, $length=null, $init=GOOGLE_MAGIC) {
    if(is_null($length)) {
    $length = sizeof($url);
    }
    $a = $b = 0x9E3779B9;
    $c = $init;
    $k = 0;
    $len = $length;
    while($len >= 12) {
    $a += ($url[$k+0] +($url[$k+1]<<8) +($url[$k+2]<<16) +($url[$k+3]<<24));
    $b += ($url[$k+4] +($url[$k+5]<<8) +($url[$k+6]<<16) +($url[$k+7]<<24));
    $c += ($url[$k+8] +($url[$k+9]<<8) +($url[$k+10]<<16)+($url[$k+11]<<24));
    $mix = mix($a,$b,$c);
    $a = $mix[0]; $b = $mix[1]; $c = $mix[2];
    $k += 12;
    $len -= 12;
    }
    
    $c += $length;
    switch($len) /* all the case statements fall through */
    {
    case 11: $c+=($url[$k+10]<<24);
    case 10: $c+=($url[$k+9]<<16);
    case 9 : $c+=($url[$k+8]<<8);
    /* the first byte of c is reserved for the length */
    case 8 : $b+=($url[$k+7]<<24);
    case 7 : $b+=($url[$k+6]<<16);
    case 6 : $b+=($url[$k+5]<<8);
    case 5 : $b+=($url[$k+4]);
    case 4 : $a+=($url[$k+3]<<24);
    case 3 : $a+=($url[$k+2]<<16);
    case 2 : $a+=($url[$k+1]<<8);
    case 1 : $a+=($url[$k+0]);
    /* case 0: nothing left to add */
    }
    $mix = mix($a,$b,$c);
    /*-------------------------------------------- report the result */
    return $mix[2];
    }
    
    //converts a string into an array of integers containing the numeric value of the char
    function strord($string) {
    for($i=0;$i<strlen($string);$i++) {
    $result[$i] = ord($string{$i});
    }
    return $result;
    }
    
    function get_pr($url) {
    $result=array("",-1);
    
    if (($url.""!="")&&($url.""!="http://")):
    // check for protocol 
    if (substr(strtolower($url),0,7)!="http://"):
    $url="http://".$url;
    endif;
    
    $url="info:".$url;
    $checksum=GoogleCH(strord($url));
    $google_url=sprintf("http://www.google.com/search?client=navclient-auto&ch=6%u&features=Rank&q=".$url,$checksum); // url to get from google 
    
    $contents="";
    // let's get ranking 
    // this way could cause problems because the Browser Useragent is not set... 
    if ($handle=fopen($google_url,"rb")):
    while(true):
    $data=fread($handle,8192);
    if (strlen($data)==0):
    break;
    endif;
    $contents.=$data;
    endwhile;
    fclose($handle);
    else:
    $contents="Connection unavailable";
    endif;
    
    $result[0]=$contents;
    // Rank_1:1:0 = 0 
    // Rank_1:1:5 = 5 
    // Rank_1:1:9 = 9 
    // Rank_1:2:10 = 10 etc 
    $p=explode(":",$contents);
    if (isset($p[2])):
    $result[1]=$p[2];
    endif;
    endif;
    
    return $result;
    }
    
    $pr = get_pr($url);
    if($pr[1] == -1)
        $pr[1] = 0;
    return $pr[1];

} // end google_pagerank()

?>


А вот код для определеня PR каждой страницы конкретного домена.
Базируется на предыдущем скрипте.
PHP:
This function will crawl a web site and report all the Google PageRanks of every webpage within that domain. Include 'http://' in the start page URL. Do not include 'http://' for the domain URL. This function uses PHP sessions and will store the URLs in the variable $_SESSION['pageranks']. 

This function is based on the code for the google_pagerank function.


<?php
session_start();
set_time_limit(0);
site_pageranks('http://www.icemelon.com', 'icemelon.com');
print_r($_SESSION['pageranks']);
?>


[B]Note: This function may take a long time to run, so you may want to use set_time_limit(0).[/B]

Source Code

<?php
define('GOOGLE_MAGIC', 0xE6359A60);

//unsigned shift right
function zeroFill($a, $b)
{
    $z = hexdec(80000000);
    if ($z & $a)
    {
        $a = ($a>>1);
        $a &= (~$z);
        $a |= 0x40000000;
        $a = ($a>>($b-1));
    }
    else
    {
        $a = ($a>>$b);
    }
    return $a;
}

function mix($a,$b,$c) {
    $a -= $b; $a -= $c; $a ^= (zeroFill($c,13));
    $b -= $c; $b -= $a; $b ^= ($a<<8);
    $c -= $a; $c -= $b; $c ^= (zeroFill($b,13));
    $a -= $b; $a -= $c; $a ^= (zeroFill($c,12));
    $b -= $c; $b -= $a; $b ^= ($a<<16);
    $c -= $a; $c -= $b; $c ^= (zeroFill($b,5));
    $a -= $b; $a -= $c; $a ^= (zeroFill($c,3)); 
    $b -= $c; $b -= $a; $b ^= ($a<<10);
    $c -= $a; $c -= $b; $c ^= (zeroFill($b,15));
    
    return array($a,$b,$c);
}

function GoogleCH($url, $length=null, $init=GOOGLE_MAGIC) {
    if(is_null($length)) {
        $length = sizeof($url);
    }
    $a = $b = 0x9E3779B9;
    $c = $init;
    $k = 0;
    $len = $length;
    while($len >= 12) {
        $a += ($url[$k+0] +($url[$k+1]<<8) +($url[$k+2]<<16) +($url[$k+3]<<24));
        $b += ($url[$k+4] +($url[$k+5]<<8) +($url[$k+6]<<16) +($url[$k+7]<<24));
        $c += ($url[$k+8] +($url[$k+9]<<8) +($url[$k+10]<<16)+($url[$k+11]<<24));
        $mix = mix($a,$b,$c);
        $a = $mix[0]; $b = $mix[1]; $c = $mix[2];
        $k += 12;
        $len -= 12;
    }

    $c += $length;
    switch($len) /* all the case statements fall through */
    {
        case 11: $c+=($url[$k+10]<<24);
        case 10: $c+=($url[$k+9]<<16);
        case 9 : $c+=($url[$k+8]<<8);
        /* the first byte of c is reserved for the length */
        case 8 : $b+=($url[$k+7]<<24);
        case 7 : $b+=($url[$k+6]<<16);
        case 6 : $b+=($url[$k+5]<<8);
        case 5 : $b+=($url[$k+4]);
        case 4 : $a+=($url[$k+3]<<24);
        case 3 : $a+=($url[$k+2]<<16);
        case 2 : $a+=($url[$k+1]<<8);
        case 1 : $a+=($url[$k+0]);
        /* case 0: nothing left to add */
    }
    $mix = mix($a,$b,$c);
    /*-------------------------------------------- report the result */
    return $mix[2];
}

//converts a string into an array of integers containing the numeric value of the char
function strord($string) {
    for($i=0;$i]/i', $html, $m);
        
    foreach($m[1] AS $url) {
        // check if $domain
        if(preg_match("/^http:\/\/.*$domain/i", $url)) {
            // check if local page
            if(!preg_match('/http:\/\//i', $url))
                $url = "http://www.$domain/$url";
            // get rid of PHPSESSID
            if(preg_match('/(\?PHPSESSID=\w+)$/i', $url, $m2))
                $url = str_replace($m2[1], '', $url);

            // check if url checked
            if(!in_array($url, $_SESSION['urls'])) {
                $_SESSION['urls'][] = $url;
                $pr = google_pagerank($url);
                $pr = trim($pr);
                $_SESSION['pageranks'][$pr][] = $url;          

                site_pageranks($url, $domain);
            }
        }    
    }
}

?>

Источник: _http://www.icemelon.com/php/google_pagerank.htm
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху