Php curl bekletme javascript için
5
●708
- 19-07-2015, 10:50:29Üyeliği durdurulduMerhaba arkadaşlar curl de bağlantıda bekletme yapabiliyormuyuz. sayfayı javascript değiştiriyor 2 saniye sonra ve ben değişikliği almak istiyorum. curl değişiklik öncesini alıyor bana değişiklik sonrası gerekiyor nasıl yapabilirim bilen var mı ? phantomjs diye bir eklenti buldum fakat işe yarıyor mu bilmiyorum bilgisi olan varsa yardımcı olursa sevinirim
- 19-07-2015, 12:49:25Büyük ihtimalle XHR isteği yapıp başka bir sayfadan içerik çekiyordur. Bu isteğin nereye ve hangi bilgilerle gittiğini yakalayıp, aynı isteği sizde cURL ile yapabilirsiniz. Eğer Chrome kullanıyorsanız Developer Tools'da Network sekmesinden takip edebilirsiniz.
PhantomJS'i arayüzsüz bir tarayıcı gibi düşünebilirsiniz. PhantomJS ile de yapılabilir büyük ihtimalle istediğiniz, ama yapılan isteği yakalayıp cURL ile simule etmek daha kolay olur. - 19-07-2015, 14:50:14Üyeliği durdurulduphantom js daha önce kullanmadım. ayrıca site kendi veritabanından veri çekiyor sanırım. siteyide vereyim tamindir.com en son sayfaya girince programın indirme butonu var onunda linkini aldığınızda yeni bir sayfaya giriyorsunuz örneklendireyim . Bu programın indirme sayfası http://www.tamindir.com/bluestacks/jebias adlı üyeden alıntı: mesajı görüntüle
buradan alınabilecek bir link yok. buradan şu sayfaya giriyorum
http://www.tamindir.com/bluestacks/indir bu sayfada üstte yeşil div içinde adresi yeni sekmede açınız var o kısımda link mevcut fakat o kısım js ile yapılmış 2 saniye gecikmeli geliyor dolayısıyla ben çektiğimde o veri benm curl initimde olmuyor. buna göre bir yorum yapabilirmisiniz şimdi rica etsem? - 19-07-2015, 15:16:56misal http://www.tamindir.com/counter-strike/indir/ burda direk
attr('href','http://cloud.bluestacks.com/api/getdownload');vargibi vermemiş
attr('href',indir_link);varşeklinde verilmiş.var indir_link='http://www.tamindir.com/indir/'+tarih_format+'/counter-strike/windows/1.5-turkce-dil-paketi';
şeklinde indirme linkini elde edebilirsiniz.
tarih formatını$tarih_format=base64_encode(date('Y-m-d H:i:s',time()));şeklinde kendinizde elde edip kullanabilirsiniz. Tabiki önce tam indirden regex ile indirme kodunu alın.
preg_match("~indir_link=\'(.*?)\'\+tarih_format\+\'(.*?)\'~is",$curl_veri,$cikti); $tarih_format=base64_encode(date('Y-m-d H:i:s',time())); $indirme_linki=$cikti[1].$tarih_format.$cikti[2];şeklinde deneyebilirisiniz. - 19-07-2015, 16:26:28Üyeliği durdurulduufukt51 adlı üyeden alıntı: mesajı görüntülehocam indirme linki yazıyor demişsinde. siteye girdikten yaklaşık 1.5 saniye sonra geliyor link. daha öncesinde yok curl ise bu 1.5 saniye öncesinin datasını veriyor bana dolayısıyla link yok ortada parselleyebileceğim bir veride yok tamamen linksiz bir veri geliyor benm javayı bekletip linkin açılıp linki çekmem gerekiyor. eğer yapabilirseniz bir örnek rica edebilrmiyimtolgasen adlı üyeden alıntı: mesajı görüntüle
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 15:26:28 -->-> Daha önceki mesaj 15:15:17 --
oldu hocam çok teşekkür ederimufukt51 adlı üyeden alıntı: mesajı görüntüle
+repreprepreprep
+repreprepreprep