• 21-11-2017, 22:37:46
    #1
    Merhaba curl ile bir siteden veri çekmeye calısıyorum. Veriyi her 2 saniyede bir yeniletiyorum. Canlı döviz kuru gibi düşünebilirsiniz.
    Veriyi çekiyorum ama bana gerekli olan alan haricinde acıklamayıda cekiyor.
    Çektiğim veriden sadece fiyatı nasıl yazdırabilirim yardımcı olurmusunuz. Kodlarımı yazıyorum buyrun:

    Alıntı
    <?php
    function siteConnect($site)
    {
    $ch = curl_init();
    $hc = "";
    curl_setopt($ch, CURLOPT_REFERER, '');
    curl_setopt($ch, CURLOPT_URL, $site);
    curl_setopt($ch, CURLOPT_USERAGENT, $hc);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $site = curl_exec($ch);
    curl_close($ch);

    preg_match_all('@<td nowrap><b><font size=1 color="blue">(.*?)</font>@si',$site,$verifiyat);
    echo $verifiyat[0][0];
    }
    $giris = siteConnect('www.veriyicektigimsite.com');
    echo $giris;
    ?>
    Sitenin kaynak kodunda <td nowrap><b><font size=1 color="blue">DOLAR : 3,9125</font> şeklinde bulunan kodu çekiyorum karşıma DOLAR : 3,9125 şeklinde veri geliyor. Bana gerekli olan 3,9125 veriyi çekmesi.
    Explode ile parçalamak vs gerekiyormuş ama ne yaptıysam beceremedim. Kodları nasıl kullanacağımıda bilemedim acemiyim.
    file_get_contents ile yaptım ama sunucum desteklemediği için curl ile yapmam gerekiyor.
    Yardımcı olabilirseniz memnun olurum hayırlı günler.
  • 21-11-2017, 23:02:12
    #2
    <?php
    
    function siteConnect($site) {
        // curl çekme işlemleri burada olacak
        // çekilen veriler $site değişkeninde olacak
    
        $ifade1 = '">DOLAR : ';
        $ifade2 = '</f';
    
        $nokta = strpos($site, $ifade1);
        if($nokta === false) { return ''; }
        $nokta += strlen($ifade1);
    
        $uzunluk = strpos($site, $ifade2, $nokta);
        if($uzunluk === false) {
            $sonuc = substr($site, $nokta);
        } else {
            $uzunluk -= $nokta;
            $sonuc = substr($site, $nokta, $uzunluk);
        }
    
        return $sonuc;
    }
  • 21-11-2017, 23:18:08
    #3
    Obsidya adlı üyeden alıntı: mesajı görüntüle
    <?php function siteConnect($site) { // curl çekme işlemleri burada olacak // çekilen veriler $site değişkeninde olacak $ifade1 = '">DOLAR : '; $ifade2 = '</f'; $nokta = strpos($site, $ifade1); if($nokta === false) { return ''; } $nokta += strlen($ifade1); $uzunluk = strpos($site, $ifade2, $nokta); if($uzunluk === false) { $sonuc = substr($site, $nokta); } else { $uzunluk -= $nokta; $sonuc = substr($site, $nokta, $uzunluk); } return $sonuc; }
    Merhaba deniyorum şimdi insallah becerebilirim.
    curl işlemleride eklenmiş şekilde yazabilirmisiniz rica etsem
  • 21-11-2017, 23:52:36
    #4
    TuncerSK adlı üyeden alıntı: mesajı görüntüle
    Merhaba deniyorum şimdi insallah becerebilirim.
    curl işlemleride eklenmiş şekilde yazabilirmisiniz rica etsem
    Hangi siteden veriyi çekmek istiyorsun site adını yaz ona göre biz de yardımcı olalım dimi ama ?
    Böyle nasıl bir sonuç bekliyorsunuz ?