Merhabalar, bu gönderide farklı sayfadan (herhangi bir ihlal/şikayet ile karşılaşmamak adına harici sayfa olarak https://www.omurserdar.com/kategori/isletim-sistemleri adresini kullandım) CURL ile nasıl veri çekileceğinden bahsediyorum. Bu işlemi, örnek üzerinden ifade etmeye çalışıyorum.
Curl işlemlerini hazırlamak/başlatmak için curlBaslat isminde parametre alan fonksiyon mevcut. Parametre olarak hangi sayfa üzerinde işlem gerçekleştireceği belirtilmesi gerekmekte. Bu fonksiyonu, DOMDocument sınıfından nesne örneklendirmesi oluşturduktan sonra bu sınıftaki loadHTML fonksiyonuna parametre olarak verdim. Daha sonrasında sınıfta bulunan getElementsByTagName ile hangi DOM nesnesi üzerinden (div, p, h1, img), getAttribute ile hangi veri seçici(id, class, data-id, value ya da özel seçici; fiyat, durum gibi) üzerinde bulunan verinin getirilmesini istediğimi döngüler ve koşullar ile belirttim.
Karakter sorunu yaşamamak için curlBaslat sınıfında mb_convert_encoding fonksiyonunu kullandım. Bu fonksiyonda dönüştürülecek olan metni ilk parametreye, hangi karakter setine dönüştüreceğimi ikinci parametreye, hangi karakter setinden dönüştüreceğimi ise üçüncü parametreye yazdım. mb_convert_encoding isimli fonksiyon için daha detaylı bilgiye https://suatdilek.com.tr/haber/php-mb-convert-encoding-turkce-karakter-hatasi/67 adresinden erişilebilir.
PHP Kodları
şeklindedir.
Timestamp - Datetime Çevrimi (Convert Timestamp to Datetime)
PHP ini dosyası üzerinde terminal ile değişiklikte bulunmak
self & this