«
«
Kullanıcı Masası
Hoşgeldin Ziyaretçi

Kategoriler
PHP Sıra Bulucu - Google

PHP Sıra Bulucu Hakkında



PHP ile istenilen kelimede Google'da kaçıncı sırada olduğunuzu bulmak oldukça basit. Ancak burada bir sıkıntı var, o sıkıntı da Google'ın günlük sadece 100 sorgulama limiti vermesi. Ama eğer sadece kendiniz kullanacağınız bir sorgulama aracı yapmak istiyorsanız ve bana günlük 100 sorgulama yeter diyorsanız aşağıda verdiğim kodlar işinizi görecektir. Hazırlamış olduğum bu yazılım iki parçadan oluşuyor, biri javascript diğeri PHP tarafı, javascript kullanmamın sebebi sayfa yenilemeden işlem sonucunu görmek için, siz dilerseniz sadece PHP tarafınıda kullanabilirsiniz.


İşlem yapan PHP kodu:

Kod Çizelgesi:[Hepsini Seç] 
if(isset($_POST['sirabul']))
    {
        $sonuclar = array();
        
        if((isset($_POST['sayfa'])) AND ($_POST['sayfa'] != '')){ $sayfa '&start='.$_POST['sayfa'].'0';  $sayfaSayiOlarak $_POST['sayfa']; }
        else {$sayfa ''$sayfaSayiOlarak 0;}
        
        if((isset($_POST['kelime'])) AND ($_POST['kelime'] != '')) $kelime '&q='.urlencode($_POST['kelime']);
        else $kelime '';
        
        $protokol '';
        
        if((isset($_POST['enfazla'])) AND ($_POST['enfazla'] != '')) $enfazla $_POST['enfazla'];
        else $enfazla 10;

        $anahtar ''/* GOOGLE API KEY */
        
        $adres 'https://www.googleapis.com/customsearch/v1?cx=010987047032419380671%3Azu3fnejdxjy&key='.$anahtar.'&cr=TR&hl=tr'.$kelime.$sayfa;
        
        $ch curl_init($adres);
        curl_setopt($chCURLOPT_RETURNTRANSFERtrue);
        curl_setopt($chCURLOPT_HEADERfalse);
        curl_setopt($chCURLOPT_FOLLOWLOCATIONtrue);
        curl_setopt($chCURLOPT_AUTOREFERERfalse);
        curl_setopt($chCURLOPT_CONNECTTIMEOUT120);
        curl_setopt($chCURLOPT_TIMEOUT120);
        curl_setopt($chCURLOPT_MAXREDIRS10);
        curl_setopt($chCURLOPT_SSL_VERIFYPEERfalse);
        curl_setopt($chCURLOPT_SSLVERSION'all');
        curl_setopt($chCURLOPT_COOKIEFILE,'cookies.txt');
        curl_setopt($chCURLOPT_COOKIEJAR,'cookies.txt');
        
        $basliklar getallheaders();
        $basliklar['Host'] = 'www.googleapis.com';
        $user_agent $_SERVER['HTTP_USER_AGENT'];
        
        if($sayfa == ''$basliklar['Referer'] = '';
        else $basliklar['Referer'] = (((isset($_COOKIE['oncekiSayfa'])) AND ($_COOKIE['oncekiSayfa'] != '')) ? $_COOKIE['oncekiSayfa'] : $adres);
        curl_setopt($chCURLOPT_HTTPHEADER$basliklar);

        curl_setopt($chCURLOPT_REFERER$basliklar['Referer']);
        curl_setopt($chCURLOPT_USERAGENT$user_agent);
        
        setcookie('oncekiSayfa'$adrestime()+1800);
        
        $sonuc curl_exec($ch);
        $hata1   curl_errno($ch);
        $hata2   curl_error($ch);
        curl_close($ch);
        
        $sonuclar['ayarlar']['basliklar'] = $basliklar;
        $sonuclar['ayarlar']['kelime'] = $kelime;
        $sonuclar['ayarlar']['sayfa'] = $sayfaSayiOlarak;
        $sonuclar['ayarlar']['adres'] = $adres;
        $sonuclar['hatalar']['0'] = $hata1;
        $sonuclar['hatalar']['1'] = $hata2;
        $sonuclar['sonuc'] = base64_encode($sonuc);
        $linkSay 0;    
        
        $sonuc json_decode($sonuc);
        
        if(isset($sonuc->error->errors->domain))
            $sonuclar['hata'] = $sonuc->error->errors->domain.' - '.$sonuc->error->errors->reason.' - '.$sonuc->error->errors->message;
        
        if(!isset($sonuclar['hata']))
        {
            if (isset($sonuc->items))
            {        
                foreach($sonuc->items as $item) {
                    $linkSay++;
                    $sonuclar['linkler'][$sayfaSayiOlarak][] = $item->displayLink;
                }
            }
            else $sonuclar['hata'] = 'Sonuç bulunamadı !';
            
            if((($sayfaSayiOlarak+1)*10) < $enfazla)
            {
                if($linkSay 9$sonuclar['durum'] = 'devam';
                else $sonuclar['durum'] = 'bitti';
            }
            else $sonuclar['durum'] = 'bitti';
        }
        echo json_encode($sonuclar);
        exit();
    }


Görsel İçin bir tutam HTML kodu:

Kod Çizelgesi:[Hepsini Seç] 
<!DOCTYPE html>
<html lang="tr">
<head
    <meta charset="UTF-8" />
    <title>Seo Araçları</title>
    <link href="stil/bootstrap/css/bootstrap.min.css" rel="stylesheet" type="text/css">
    <link href="stil/css.css" rel="stylesheet" type="text/css">
</head>
<body>
<br />
<br />
<div class="container">
    <div class="row">
        <div class="panel panel-info">
            <div class="panel-heading">Sıra Bulucu</div>
            <div class="panel-body">
            
                <form action="sira_bulucu.php" method="post" class="formSiraBul">
                
                    <input type="hidden" name="sirabul" value="true" />
                    
                    <div class="form-group">
                        <label>Sorgu Limiti</label>
                        <div class="input-group">
                            <span class="input-group-addon"><span class="glyphicon glyphicon-share-alt"></span></span>
                            <input type="number" class="form-control" name="enfazla" value="" placeholder="500" />
                        </div>
                    </div>
                    
                    <div class="form-group">
                        <label>Alan Adı</label>
                        <div class="input-group">
                            <span class="input-group-addon"><span class="glyphicon glyphicon-share-alt"></span></span>
                            <input type="text" class="form-control" name="domain" placeholder="alan adınız..." required="required" />
                        </div>
                    </div>
                    
                    <div class="form-group">
                        <label>Anahtar Kelime</label>
                        <div class="input-group">
                            <span class="input-group-addon"><span class="glyphicon glyphicon-share-alt"></span></span>
                            <input type="text" class="form-control" name="kelime" placeholder="kelime..." required="required" />
                        </div>
                    </div>
                    
                    <div class="col-xs-12">
                        <input type="submit" class="btn btn-primary pull-right" value="Sorgula" />
                    </div>
                    
                </form>
                
                <div class="sil s20"></div>
                <div id="seoCikti"></div>
                
            </div>
        </div>
    </div>
</div>
<script type="text/javascript" src="stil/js/jquery-3.1.1.min.js" defer></script>
<script type="text/javascript" src="stil/js/ayarlar.js" defer></script>
</body>
</html>


Yukarıdaki PHP kodunda yer alan $anahtar değişkenine Google Api Console'dan aldığınız keyi girmelisiniz, aksi taktirde çalışmayacaktır.

Javascript kodumuz:


Kod Çizelgesi:[Hepsini Seç] 
jQuery(document).ready(function($){
    var siraBul=(function($thissayfa){
        $('input[type="submit"]').val('Yükleniyor...');
        
        if(sayfa == undefined){ var syf ''; var sayfa 0; }
        else { var syf '&sayfa='+(parseInt(sayfa) + 1); var sayfa = (parseInt(sayfa) + 1); }
        
        $.ajax({
            type:$($this).attr"method" ),
            url:$($this).attr"action" ),
            data:$($this).serialize()+syf,
            success:function(cevap){
                // alert(cevap);
                cevap = $.parseJSON(cevap);
                
                if(cevap.hata == undefined
                {
                    for(link in cevap.linkler[sayfa])
                    {
                        $('#seoCikti').append();
                        $('#seoCikti').append(sayfa+''+(parseInt(link)+1)+'. '+cevap.linkler[sayfa][link]+'
<br>');
                    }
                    
                    $('input[type="submit"]').val('Sorgula');
                    
                    if(cevap.durum == 'devam'siraBul($thissayfa);
                }
                else $('#seoCikti').append(cevap.hata);
            }
        });
    });
    
    
    $('.formSiraBul').on('submit', function( event ) {
        event.preventDefault();
        $('#seoCikti').empty();
        siraBul(this);
    });
});


Tam Projeyi indirmek için tıklayınız : sira_bulucu.zip
Etiketler: , ,
Yorumlar  (Toplam: 6) Sıralama:
Avatar
Hüseyin 12.08.2018-04:59:30
Hocam merhaba buradaki kodları nasıl birleştirerek bu aracı kendim için yapabilirim ?Destek olabilir misiniz ?
Avatar
ByLegenS 11.09.2018-10:57:52
Yazının sonuna eklediğim zip dosyasını indirebilirsiniz.
Avatar
Vefa 01.03.2019-14:43:25
Merhaba hocam apı kod çalışmıyor yenisi var mı acaba
Avatar
ByLegenS 01.03.2019-18:43:59
Maalesef uzun zaman önce yazdığım bir kod, elimde yenisi yok.
Avatar
KAYHAN DEMIR 09.10.2019-12:15:24
Ücretli   sıra bulucu ve seo analiz istiyorum web siteme eklemek
için yardımcı olursanız sevinirim iş alımı var ise.
Avatar
ByLegenS 14.10.2019-00:26:17
phpkf.com 'dan destek alabilirsiniz.
Yorum Yaz
Onay Kodu .
 
Yücel KAHRAMAN