Selam olsun tüm kod sever dostlara, Bot yazarak diğer sitelerden veri çekme nasıl yapılır? Sorularınıza istinaden uygulamalıbir örnek yapalım hem kodlarımızı test ederiz hemde yapımını yaparak öğrenmiş olun istedim. Mantık olarak bir url adresine curl ile bağlanarak regex kodlarımız ile bağlandığımız url adresinden sadece istediğimiz yeri taratıp orayı ister veri tabanımıza isterse json dosyası haline getirerek bizim sürekli olarak kullanabileceğimiz bir veri datası haline getireceğiz. Hazırsanız başlayalım.
--) Curl kodumuz ile bağlanmak istediğimiz site adresini tanımlayarak başlayalım işe.
$url="https://www.trendyol.com/"; $baglan = curl($url); //echo $baglan; //var_dump($baglan);
-- Örnek olsun diye Trendyol.com sitesine bağlanıp Üst Menüsünü yani kategori yapısını çekelim. Html koduna baktığımızda ul class main-nav içinde yer alıyor menü kategori yapısı buraya regex preg_match ile taratalım.
preg_match('#<ul class=main-nav>(.*?)</ul></nav>#', $baglan, $Menu); $UstMenuArr = explode("<li class=tab-link>", $Menu[1]);
-- Tarattığımızda Bize üst kategori (Kadın), alt kategorisi (Giyim) ve onunda alt kategorisi (Elbise) olarak verdiğini yani alt alta 3 kategori yapısının olduğunu görüyoruz.
-- Şimdi Sıra Geldi Kategori Yapısını. Üst ve alt kategori olarak ayırıp array haline getirmeye...
$UstAltAltMenuArr=array(); $uArr = array(); $uaArr = array(); $uaaArr = array(); for($ArrID=1; $ArrID<count($UstMenuArr); $ArrID++){ //========Üst Menü (Kadın,Erkek,Çocuk) preg_match('#<a href=(.*?) class=category-header>(.*?)</a>#', $UstMenuArr[$ArrID], $UstKatego); $ustkatego = $UstKatego[2]; $ustkatUrl = $UstKatego[1]; $uArrid = $ArrID."_".toAscii($ustkatego); $uArrs = array('id'=>$uArrid, 'uid'=>0, 'ukname'=>$ustkatego, 'ukUrl'=>$ustkatUrl); array_push($uArr, $uArrs); $UstAltMenu = explode("<div class=category-box>", $UstMenuArr[$ArrID]); //var_dump($UstAltMenu); // ============ Alt Menü ======================== for($ua=1; $ua<count($UstAltMenu); $ua++){ preg_match('#<a href=(.*?) class=sub-category-header>(.*?)</a>#', $UstAltMenu[$ua], $UstAltKatego); $ustaltkatego = $UstAltKatego[2]; $ustaltkatUrl = $UstAltKatego[1]; //echo "br--üak: (".count($UstAltMenu)."): ".$ustaltkatego." -- ".$ustaltkatUrl."br"; preg_match('#<ul class=sub-item-list>(.*?)</ul>#', $UstAltMenu[$ua], $UstAltAltMenus); preg_match_all('#<a href=(.*?)>(.*?)</a>#', $UstAltAltMenus[1], $UstAltAltMenu); //var_dump($UstAltAltMenu); $uaArrid = $ArrID."_".$ua."_".toAscii($ustaltkatego); // ============ En Alt Menü ======================== for($uaa=0; $uaa<count($UstAltAltMenu[1]); $uaa++){ //echo "---üaak: ".$UstAltAltMenu[2][$uaa]." ------ ".$UstAltAltMenu[1][$uaa]."br"; $uaaArrid = $ArrID."_".$uaa."_".toAscii($UstAltAltMenu[2][$uaa]); $uaaArrs = array('id'=>$uaaArrid,'uid'=>$uaArrid,'uaakname'=>$UstAltAltMenu[2][$uaa], 'uaakUrl'=>$UstAltAltMenu[1][$uaa]); array_push($uaaArr, $uaaArrs); } $uaArrS = array('id'=>$uaArrid, 'uid'=>$uArrid, 'uakname'=>$ustaltkatego, 'uakUrl'=>$ustaltkatUrl);// array_push($uaArr, $uaArrS); } }
-- Json Haline Getirirken sayfamızın bir json olduğunu belirtmek için sayfanın en başına şu kodları yazalım.
@header('Content-type: application/json; charset=utf-8');//json encode için gerekli @header('Access-Control-Allow-Origin: *');
--- Curl ve function Kodlarımızı unutmayalım. Onu bir önceki konuda (Bot Yazmak İçin Gerekli Php Kodları Nelerdir?) anlatmıştım gerekli php kodlarını sayfamıza dahil edelim.
Evet kodlarımızıda dahil ettikten sonra tarayıcıda yazdığımız php sayfasını çalıştırlarım. Sizinde böyle bir sonuç geliyorsa sayfanıza adımları doğru yapmış demeksinizdir. Çalışan Trendyol Menü Json Dosyası için Tıklayın!
Bot(Rebot) yazılım ile alakalı diğer konuları incelemeyi unutmayın. Php Bot, Bot Yazmak İçin Gerekli Php Kodları Nelerdir?
-- Evet kod sever dostlarım umarım bu kodlar üzerinden sitelere bağlanıp verilerini tarayabilirsiniz. Takıldığınız yerde soru sorabilirisniz elimden geldiğince yardımcı olurum.

Telif Hakkı:
Problemi Şikayet Et!HAKKIMDA
Yazılım Uzmanlığı konusunda 11 yılı aşkın süredir Türkiye'de Cumhurbaşkanlığı olmak üzere Kurumlara ve Tüzel kişilere; Yön verme, Yücelik Sağlama ve Büyüme gereksinimlerinden doğan Yazılım ihtiyaclarına çözümler sunmaktayım.
<html>
<body>
<h5>
Yazılım
&
Teknoloji
</h5>
<p>
Dünyasına
Hoş Geldiniz.
</p>
</body>
</html>
Son Eklenen Konular
Nginx Nedir, Nasıl Çalışır, Kurulumu, Hata ve Çözümü
03 Haziran, 2022
Web Site | Web Tasarım | Web Yazılım
27 Nisan, 2022
Html URL ASCII Karakter kodları
04 Mart, 2022
Jquery Alert, Sweet alert, Dialog Kullanımı
03 Mart, 2022
Doğal Seo Çalışması Nasıl Yapılır?
19 Şubat, 2022
En Çok Okunanlar
Google api key nasıl alınır?
26 Eylül, 2013
Youtube Video'sunu Gif Yapma Gif'e Çevirme
17 Ağustos, 2013
linux çeşitleri nelerdir?
13 Ağustos, 2013
Php ile bot nasıl yapılır?
22 Eylül, 2013
Ajax ile sayfa yenilenmeden resim yükleme nasıl yapılır?
04 Ekim, 2013
İlgili İçerikler
-
18 Temmuz, 2021 3861
Php ve Socket.io kullanarak Real Time haberleşme
-
14 Temmuz, 2021 1060
Php Composer windows ve MacOSS Kurulumu ile paketlerin kullanımı
-
03 Haziran, 2021 804
Mac Os xamp php resim upload 777 hata çözümü
-
13 Mayıs, 2021 2576
Bot Yazmak İçin Gerekli Php Kodları Nelerdir?
-
11 Mayıs, 2021 4575
Firebase Push Notification Web Sitemizden Mobil Cihazlara Nasıl Bildirim Gönderilir? Php Api FCM Send Notification Bildirim Göndermeyi Uygulamalı Olarak Göstereceğim
-
06 Mayıs, 2021 7274
İyzico kredi kartı ödeme alma Php Api entegrasyonu ve siteleriniz de sanal pos işlemlerinin kullanımı.