Basit Bir Soru Curl

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hybris
    Hybris's avatar
    Kayıt Tarihi: 12/Haziran/2007
    Erkek

    sahibinden anasayfasındaki linkleri çekmek için en basit bi örnek. curl a sen çevirirsin:

    <?php
    
      $html = file_get_contents('http://www.sahibinden.com/');
      $dom = new DOMDocument;
      libxml_use_internal_errors(true);
      $dom->loadHTML($html);
      foreach ($dom->getElementsByTagName('a') as $node){
        echo $node->getAttribute('href')."<br>";
      }
    ?>

    html parse ederken html çok kısa değilse regex kullanılmaz.


    agile isn’t how fast you can go, it’s how fast you can turn.
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    pesimistzombie
    pesimistzombie's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    ama sen direk href çekmekten bahsediyorsun senin yapacağın şu; birden fazla link çıkmasının sebebi adamlar farklı patternli a taglerini farklı yerde gösteriyorlar. Bunlar her sayfa yenileyişte değişmiyor. Sen sadece bir classı gözüne kestirip onun hreflerini çekeceksin. 

    $regex='|<a.*?href="/ilandetay(.*?)" class="txt14px bold"|';

    örnek bunu dene.


    :|
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ozgunlu
    ozgunlu's avatar
    Banlanmış Üye
    Kayıt Tarihi: 11/Kasım/2011
    Erkek
    pesimistzombie bunu yazdı

    ama sen direk href çekmekten bahsediyorsun senin yapacağın şu; birden fazla link çıkmasının sebebi adamlar farklı patternli a taglerini farklı yerde gösteriyorlar. Bunlar her sayfa yenileyişte değişmiyor. Sen sadece bir classı gözüne kestirip onun hreflerini çekeceksin. 

    $regex='|<a.*?href="/ilandetay(.*?)" class="txt14px bold"|';

    örnek bunu dene.

    hocam bunları biliyorum :) Yok ben anlatamıcam derdimi :))

    neyse ben tüm hrefleri çektim, sonra da array_unique() ile tekleştirdim.

    Teşekkür ederim herkese :)


    Hello, i am nothing. I come from Neverland.
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    pesimistzombie
    pesimistzombie's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    "sadece class ları ortak "href" lerini çekmeye çalışıyorum." yazını yeni gördüğümü itiraf etmeliyim :D


    :|
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    manyaki
    manyaki's avatar
    Kayıt Tarihi: 27/Temmuz/2005
    Erkek
    ozgunlu bunu yazdı
    pesimistzombie bunu yazdı

    ama sen direk href çekmekten bahsediyorsun senin yapacağın şu; birden fazla link çıkmasının sebebi adamlar farklı patternli a taglerini farklı yerde gösteriyorlar. Bunlar her sayfa yenileyişte değişmiyor. Sen sadece bir classı gözüne kestirip onun hreflerini çekeceksin. 

    $regex='|<a.*?href="/ilandetay(.*?)" class="txt14px bold"|';

    örnek bunu dene.

    hocam bunları biliyorum :) Yok ben anlatamıcam derdimi :))

    neyse ben tüm hrefleri çektim, sonra da array_unique() ile tekleştirdim.

    Teşekkür ederim herkese :)

    Ben de bunu onerecektim, kolay gelsin.


    since 2005 // tbt
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hybris
    Hybris's avatar
    Kayıt Tarihi: 12/Haziran/2007
    Erkek
    pesimistzombie bunu yazdı

    "sadece class ları ortak "href" lerini çekmeye çalışıyorum." yazını yeni gördüğümü itiraf etmeliyim :D

    sen yazınca farkettim ben de :P

    ben doğru kullanımı yine de yazayım. belki başkasının işine yarar.

    	$html = file_get_contents('http://www.dizibox.org/');
    
    	$dom = new DOMDocument;
    	libxml_use_internal_errors(true);
    	$dom->loadHTML($html);
    	foreach ($dom->getElementsByTagName('a') as $node) { // hangi element? "a"
    		if($node->getAttribute('class') == 'hoverBorder'){ // hangi class? "hoverBorder"
    			echo $node->getAttribute('href'); // link
    			//echo $node->textContent; // link içeriği
    		}
    	}

    agile isn’t how fast you can go, it’s how fast you can turn.
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ozgunlu
    ozgunlu's avatar
    Banlanmış Üye
    Kayıt Tarihi: 11/Kasım/2011
    Erkek

    yazdiklarimi okumuyor musunuz :D


    Hello, i am nothing. I come from Neverland.
Toplam Hit: 1561 Toplam Mesaj: 18