Yükleniyor ...

Üye giriş

E-posta adresiniz
Şifreniz
Şifremi unuttum

Üye Kayıt

Kullanıcı adı
E-posta adresiniz
Şifreniz
Şifre tekrar
Giriş yap

PHP Simple HTML DOM Parser kullanımı

Nedir?

Simple HTML DOM Parser başka bir siteden veri çekme işlemini kolaylaştıran bir kütüphanedir. CSS seçicileri gibi kullanım tarzı ile verileri çekmek oldukça kolaydır.

 

Kurulum

Kütüphanenin sitesine gitmek için buraya tıklayın. Sitesindeki download bölümünde bulunan indirme linkinden veya direk buraya tıklayarak indirme sayfasından son versiyonu indirelim. İndirme bittikten sonra ".zip" dosyası içerisindeki "simple_html_dom.php" dosyasını çalışma klasörümüze atalım ve sayfaya dahil edelim.

<?php 
require "simple_html_dom.php";
?>

Artık kütüphaneyi kullanmaya hazırız laughing.

 

Kullanımı

<?php 
require "simple_html_dom.php";
$html = str_get_html(file_get_contents('http://www.google.com/'));  // Siteye bağlan
//$html = file_get_html('http://www.google.com/');  // Bu şekildede kullanılabilir.

foreach($html->find('a') as $element)  // Sitedeki tüm "a" elementlerini ara
{
       echo $element->href . '<br>';   // Foreach ile saydaki "a" elementi kadar döndür. Ve "href" değeri ile linke ulaş
}

?>

En basit haliyle bu şekilde kullanılıyor. Şimdi biraz daha detaya inelim laughing

 

Sayfadaki tek veriyi çekmek

Önceki örneğimizde tüm "a" elementlerini getirmiştik. Şimdi örneğin ilk "a" elementini alalım.

$link = $html->find("a",0)->href;  // İlk elementi bul(0 yerine kaçıncı sıradaysa bir eksiğini yazın örneğin 2.sıradaysa 1 yazın) ve href değerini al.
echo $link;

Eğer sonuncu veriyi almak istersek. 0 yerine -1 yazabiliriz.

 

Seçiciler

Yazımızın başında da belirtiğimiz gibi CSS seçicileri gibi kullanım şekli ile verileri rahatça çekebiliriz. Kullanımı oldukça basittir.

 

$html->find('div[id=deneme]'); // İd'si deneme olan divi bul
$html->find('div[class=deneme]'); // Class'ı deneme olan divi bul

// Veya  

$html->find('div#deneme'); // İd'si deneme olan divi bul
$html->find('div.deneme'); // Class'ı deneme olan divi bul

Basit olarak verileri bu şekilde seçebiliriz. Şimdi verileri nasıl alacağımızı görelim.

$html = str_get_html("<div class='test'><a href='http://www.webderslerim.com'>Web derslerim</a></div>"); 
$e = $html->find("div.test", 0);
echo $e->tag;  // Hangi element olduğunu yazar.
echo $e->outertext; // Seçilen elementin çıktsını yazar.
echo $e->innertext; // Seçilen elementin içindeki HTML çıktısını yazar.
echo $e->plaintext; // HTML çıktısı temizlenerek yazılır.

Daha fazla bilgi için buraya tıklayın.

 

Yorumlar(0)

Yorum yapmak için lütfen giriş yapın veya üye olun