• 22-11-2016, 12:42:24
    #1
    Merhaba,
    Eczacılar odasının yeni tasarımından veri çekmek istediğim sayfalar şunlar;
    http://www.muglaeczaciodasi.org.tr/E...ANELER/-1/1331
    http://www.muglaeczaciodasi.org.tr/E...ANELER/-1/9009

    Bu verileri text olarak nasıl alabilirim?
  • 22-11-2016, 16:01:22
    #2
    <?php
    
    $ch = curl_init();
    $timeout = 5;
    curl_setopt($ch, CURLOPT_URL, 'www.muglaeczaciodasi.org.tr/ECZANE/NOBETCI-ECZANELER/-1/1331');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    $data = curl_exec($ch);
    curl_close($ch);
    
    preg_match_all('/<a href="\/ECZANE\/DETAY\/[^"]+"[^>]+>[^<]+<h3>([^<]+)<\/h3>[^<]+<span class="ADRES">([^<]+)<span class="ILCE">([^<]+)<\/span>[^<]+<span class="ADRES-TARIFI">([^<]+)<\/span>[^<]+<\/span>[^<]+<span class="TELEFON">([^<]+)<\/span>[^<]+<\/a>/i', $data, $output);
    
    for($i=0; $i<=(count($output[0])-1); $i++) {
        $isim = trim($output[1][$i]);
        $adres = trim($output[2][$i]);
        $sehir = trim($output[3][$i]);
        $tarif = trim($output[4][$i]);
        $telefon = trim($output[5][$i]);
        
        //Burada verilere napsak istiyorsan yapabilirsin :)    
    }
    Şu şekilde bütün adresler gelir. Eğer seferinde sadece tek birtane eczane geliyorsa preg_match kullanıp for'un içinden çıkartırsan daha performanslı olur.