• 18-10-2016, 12:42:53
    #1
    Merhabalar,

    bu adresdeki nöbetci eczaneleri almak istiyorum ama file_get_contents ile bağlandığım da sayfanın kaynak kodlarını alamadım kendi tarayıcımdan bağlanıncada kaynak kodlarını görüntülemiyor crul fonksiyonuyla bu sayfanın kaynak kodlarına nasıl ulaşabilirim acaba?
  • 18-10-2016, 13:07:11
    #2
        function curl($url)
        {
            $user_agent = 'Mozilla/5.0 (Windows NT 6.2; WOW64; rv:26.0) Gecko/20100101 Firefox/26.0';
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
            curl_setopt($ch, CURLOPT_TIMEOUT, 10);
            curl_setopt ($ch, CURLOPT_REFERER, $url);
            $icerik = curl_exec($ch);
            curl_close($ch);
            return $icerik;
        }
    
        $html = curl('http://www.mersineczaciodasi.org.tr/Nobet');
  • 18-10-2016, 13:32:26
    #3
    sewakldawk adlı üyeden alıntı: mesajı görüntüle
        function curl($url)
        {
            $user_agent = 'Mozilla/5.0 (Windows NT 6.2; WOW64; rv:26.0) Gecko/20100101 Firefox/26.0';
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
            curl_setopt($ch, CURLOPT_TIMEOUT, 10);
            curl_setopt ($ch, CURLOPT_REFERER, $url);
            $icerik = curl_exec($ch);
            curl_close($ch);
            return $icerik;
        }
    
        $html = curl('http://www.mersineczaciodasi.org.tr/Nobet');
    kardeş verdiğin kodda print_r yapınca sayfadaki eczaneleri almıyor yani başkabir sayfanın kaynak kodu çıkıyor.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 13:32:26 -->-> Daha önceki mesaj 13:23:10 --

    sayfaya browser den bağlanınca:


    crul ile çıktı:



    browser ile bağlanınca yada crul ile yazdırdığım sayfanın kaynağını görüntüle dediğim zaman eczanelerin listesini göremiyorum crul a parametre girmemiz gerekiyor gibi.
  • 18-10-2016, 15:03:37
    #4
    VeLi33 adlı üyeden alıntı: mesajı görüntüle
    kardeş verdiğin kodda print_r yapınca sayfadaki eczaneleri almıyor yani başkabir sayfanın kaynak kodu çıkıyor.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 13:32:26 -->-> Daha önceki mesaj 13:23:10 --

    sayfaya browser den bağlanınca:


    crul ile çıktı:



    browser ile bağlanınca yada crul ile yazdırdığım sayfanın kaynağını görüntüle dediğim zaman eczanelerin listesini göremiyorum crul a parametre girmemiz gerekiyor gibi.
    Pardon hocam, kontrol edememiştim,

    http://www.mersineczaciodasi.org.tr/...-18&get_param=

    Bu sayfayı çekeceksiniz. JSON formatında geliyor. Tarih parametresini de NobetTarih olarak ayarlarsınız.

    json_decode fonksiyonuyla object veya array'e çevirebilirsiniz.
  • 18-10-2016, 23:44:55
    #5
    sewakldawk adlı üyeden alıntı: mesajı görüntüle
    Pardon hocam, kontrol edememiştim,

    http://www.mersineczaciodasi.org.tr/...-18&get_param=

    Bu sayfayı çekeceksiniz. JSON formatında geliyor. Tarih parametresini de NobetTarih olarak ayarlarsınız.

    json_decode fonksiyonuyla object veya array'e çevirebilirsiniz.
    kardeş çok teşekkür ederim çok kolay oldu bu iş script deki en basit kısım oldu. )

    hazırladığım kodları paylaşayım bari belki işine yarayan olur:

    $tarih = date("Y-m-d");
    function curl($url)
    {
        $user_agent = 'Mozilla/5.0 (Windows NT 6.2; WOW64; rv:26.0) Gecko/20100101 Firefox/26.0';
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
        curl_setopt($ch, CURLOPT_TIMEOUT, 10);
        curl_setopt ($ch, CURLOPT_REFERER, $url);
        $icerik = curl_exec($ch);
        curl_close($ch);
        return $icerik;
    }
     
    
    $html = curl('http://www.mersineczaciodasi.org.tr/Nobet/NobetListesi?NobetTarih='.$tarih.'&get_param=');
    
    $adi = '@"eczane_adi": "(.*?)"@si';
    $ilce = '@"ilce": "(.*?)"@si';
    $adres = '@"adres": "(.*?)"@si';
    $telefon = '@"telefon1": "(.*?)"@si';
    $saat1 = '@"nobet_baslangic_tarihsaat": "(.*?)"@si';
    $saat2 = '@"nobet_bitis_tarihsaat": "(.*?)"@si';
    
    preg_match_all($adi, $html, $adi);
    preg_match_all($ilce, $html, $ilce);
    preg_match_all($adres, $html, $adres);
    preg_match_all($telefon, $html, $telefon);
    preg_match_all($saat1, $html, $saat1);
    preg_match_all($saat2, $html, $saat2);
    $say = count($adi[1]);
    
    $i=0;
    while ($i < $say) {
        echo $adi[1][$i]." ".$i."<br>";
        $i++;
    }
  • 18-10-2016, 23:51:51
    #6
    VeLi33 adlı üyeden alıntı: mesajı görüntüle
    kardeş çok teşekkür ederim çok kolay oldu bu iş script deki en basit kısım oldu. )

    hazırladığım kodları paylaşayım bari belki işine yarayan olur:

    $tarih = date("Y-m-d"); function curl($url) { $user_agent = 'Mozilla/5.0 (Windows NT 6.2; WOW64; rv:26.0) Gecko/20100101 Firefox/26.0'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERAGENT, $user_agent); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt ($ch, CURLOPT_REFERER, $url); $icerik = curl_exec($ch); curl_close($ch); return $icerik; } $html = curl('http://www.mersineczaciodasi.org.tr/Nobet/NobetListesi?NobetTarih='.$tarih.'&get_param='); $adi = '@"eczane_adi": "(.*?)"@si'; $ilce = '@"ilce": "(.*?)"@si'; $adres = '@"adres": "(.*?)"@si'; $telefon = '@"telefon1": "(.*?)"@si'; $saat1 = '@"nobet_baslangic_tarihsaat": "(.*?)"@si'; $saat2 = '@"nobet_bitis_tarihsaat": "(.*?)"@si'; preg_match_all($adi, $html, $adi); preg_match_all($ilce, $html, $ilce); preg_match_all($adres, $html, $adres); preg_match_all($telefon, $html, $telefon); preg_match_all($saat1, $html, $saat1); preg_match_all($saat2, $html, $saat2); $say = count($adi[1]); $i=0; while ($i < $say) { echo $adi[1][$i]." ".$i."<br>"; $i++; }

    ne demek hocam

    çok daha basit bir yolunu da paylaşmak isterim;

    $html = curl('http://www.mersineczaciodasi.org.tr/Nobet/NobetListesi?NobetTarih='.$tarih.'&get_param=');
    $json = json_decode($html, true);
    
    foreach($json as $index => $data) {
        echo $data['eczane_adi'].'. '.($index+1).'<br />';
    }
    $data['telefon1'] telefon numarası,
    $data['telefon2'] 2. telefon numarası,
    $data['adres'] adres gibi, gelen JSON'daki değişken adlarına göre veri alabilirsiniz.
  • 19-10-2016, 17:20:31
    #7
    aynen bu daha kolay alıyormuş peki
    http://www.mersineczaciodasi.org.tr/...-19&get_param=
    şeklindeki uzantıya nasıl ulaştınız ?
  • 10-04-2017, 11:29:51
    #8
    ahanda banada böyle birşey lazım ? varmı yapabilecek genç konuyuda hortlattık ama