Basit Bir Soru Curl
-
kimisinde;
<a href="deneme" class="deneme1" title="deneme2">
kimisinde;
<a class="deneme1" title="deneme2" href="deneme">
bunu preg_match ile class adına göre anlatabilir miyiz? çekmek istediğim yer "href"Bunu nasıl ayırt edebilirim?
-
Hocam pc de değilim de strpos daha kolayina gelir önemsiz bi kodsa ve bu sorubun curl ile alakası yok
-
veri çekiyorum bir emlak sitesinden o yüzden curl yazdım. Ama mesela ankara diye girince adamlar,
o veriyi alacağım yerdeki linkin içindeki yapı ile ankara- balgattaki linkin içindeki yapı farklı. Class isimleri aynı sadece,
-ki bu benim farkettiğim, yani <a title="asd" href="asd" class="deneme"> diye de olabilir.
preg_match' le href' ini almaya çalışıyorum, strpos' u neresinde kullanıcam bunun anlamadım?
-
ozgunlu bunu yazdı
veri çekiyorum bir emlak sitesinden o yüzden curl yazdım. Ama mesela ankara diye girince adamlar,
o veriyi alacağım yerdeki linkin içindeki yapı ile ankara- balgattaki linkin içindeki yapı farklı. Class isimleri aynı sadece,
-ki bu benim farkettiğim, yani diye de olabilir.
preg_match' le href' ini almaya çalışıyorum, strpos' u neresinde kullanıcam bunun anlamadım?
Ayrıntılı yazmamissin ben ondan dolayi dedim. Tam olarak çekmek istediğin sayfalarin kaynak kodunu verirsen pattern olarak yardım edeceklere daha faydalı olursun
-
Hangi veri ne zaman başlıyor bilmiyorum, belki sıraları da daha da farklı olabilir onu da bilmiyorum. Sadece class ları ortak "href" lerini çekmeye çalışıyorum. Hepsi için ayrı pattern mi yazcam?
Verinin bir kısmı :
<a target="_blank" href="/ilandetay/9074-1491/ovecler-de-3-1-park-manzarali-4-kat-guney-bati-cphe-goral-emlak-" class="sMiddleLeftImg" title="ÖVECLER DE 3+1 PARK MANZARALI 4.KAT GÜNEY BATI CPHE GÖRAL EMLAK ">Verinin diğer kısmı :
<a target="_blank" class="sMiddleLeftImg" title="BEYAZÇATI'DAN TURKUAZ'DA 4+1 SATILIK LÜKS DAİRE FİYATI DÜÅÜRDÜK" href='/ilandetay/62531-487/beyazcati-dan-turkuaz-da-4-1-satilik-luks-daire--fiyati-dusurduk'> -
regex ile:
<a\s+(?:[^>]*?\s+)?href="([^"]*)"
dom ile:
$dom = new DOMDocument; $dom->loadHTML($html); foreach ($dom->getElementsByTagName('a') as $node) { echo $node->getAttribute('href'); }Hybris tarafından 16/Ara/14 16:21 tarihinde düzenlenmiştir -
içini bilmediğin tag'ları şu şekilde alabilirsin
<a[^>]*?>
bunu aldıktan sonra içinden istediğin özelliği çekmek bebek oyuncağı
"buna ne gerek var yeaaa" diyebilirsiniz
ama şöyle düşünün,
<a id="pipicik" href="xnxx.com">
ben tüm a'ları değil de, özellikle ID'si pipicik olanı arıyorum
ama siteyi tasarlayan adam <a href id > de yapabiliyor, <a id href > de yapabiliyor
sırası karışıyo yani her refresh'de
-
function bul($bas, $son, $yazi)
{
@preg_match_all('/' . preg_quote($bas, '/') .
'(.*?)'. preg_quote($son, '/').'/', $yazi, $m);
return @$m[1];
}
$linkburda = bul('<a href="', '"', $veri);
Bu fonksiyonla farklı şeylerde aratabilirsin. <a ile başlamıyorsa alttaki gibi yaparsın...
$linkburda = bul('href="', '"', $veri); // YAPARSIN ;)
Erdem tarafından 16/Ara/14 15:33 tarihinde düzenlenmiştir -
Hocalar benim kafam yandı; ya ben sizi anlamıyorum, ya da kendimi anlatamıyorum.
Ben size html kodları veriyim, bi bakın komple (bunlardan var her değişkenin içinde sayısını bilmiyorum, nerde değiştiğini de):
<a target="_blank" class="sMiddleLeftImg" title=" ETLİK AYVALIDA SİTE İÇERİSİNDE 3+1 SALON BAÄIMSIZ SATILIK DAİRE" href='/ilandetay/48236-4216/-etlik-ayvalida-site-icerisinde-3-1-salon-bagimsiz-satilik-daire'> <img width="101" height="66" src="http://icdncube.milliyetemlak.com/IlanResmiThumb/2014/12/14/-etlik-ayvalida-site-icerisinde-3-1-salon-bagim...-2-189352465.Jpeg" /> </a><a target="_blank" href='/ilandetay/48236-4216/-etlik-ayvalida-site-icerisinde-3-1-salon-bagimsiz-satilik-daire' title=" ETLİK AYVALIDA SİTE İÇERİSİNDE 3+1 SALON BAÄIMSIZ SATILIK DAİRE" class="sMiddleLeftImgHover"> 10+</a>
<a target="_blank" href="/ilandetay/49896-3118/kent-ten--acill--4-etap-yuksel-2-1-katta-yapili-sahane-konumda--" class="sMiddleLeftImg" title="KENT'ten..ACİLL! 4.ETAP YÜKSEL 2+1 KATTA YAPILI ÅAHANE KONUMDA.."> <img src="http://icdncube.milliyetemlak.com/IlanResmiThumb/2014/12/16/kent-ten--acill--4-etap-yuksel-2-1-katta-yapili...-2-189642777.Jpeg" width="101" height="66" alt="KENT'ten..ACİLL! 4.ETAP YÜKSEL 2+1 KATTA YAPILI ÅAHANE KONUMDA.." /> </a> <a target="_blank" href="/ilandetay/49896-3118/kent-ten--acill--4-etap-yuksel-2-1-katta-yapili-sahane-konumda--" class="sMiddleLeftImgHover" > 10+ </a>Bu benim yazdığım kod (sadece target' dan sonra class gelenleri alıyor):
preg_match_all('/<a target="_blank" class="sMiddleLeftImg" title="[^>]+?" href=\'(.*?)\'>/', $sonuc[1][$i], $w);
ozgunlu tarafından 16/Ara/14 15:56 tarihinde düzenlenmiştir
var_dump($w); -
sadece linkin href kısmını almayacak mısın? neden sadece href=" aratıp da " sonlanana kadar kısmı arayıp çekmiyorsun istediği kadar id koysun class koysun değişsin ne fark eder href=" burayı al " yapacağın bunu çekmek sadece nesi karışık bunun?
edit: http://pastebin.com/xDE0eU7p ilandetay olan tüm linkleri böyle çekebiliyorum hiç bir sıkıntı da vermiyor gördüğün gibi böyle bişey istemiyor musun?
pesimistzombie tarafından 16/Ara/14 16:10 tarihinde düzenlenmiştir -
pesimistzombie bunu yazdı
sadece linkin href kısmını almayacak mısın? neden sadece href=" aratıp da " sonlanana kadar kısmı arayıp çekmiyorsun istediği kadar id koysun class koysun değişsin ne fark eder href=" burayı al " yapacağın bunu çekmek sadece nesi karışık bunun?
edit: http://pastebin.com/xDE0eU7p ilandetay olan tüm linkleri böyle çekebiliyorum hiç bir sıkıntı da vermiyor gördüğün gibi böyle bişey istemiyor musun?
hacu abü bu çalışıyor bunda sıkıntı yok ama zilyon tane aynı linkten çekiyor arkadaş. Benim çekeceğim 10 link allah verdi 100 link oluyor. O yüzden sormaya çalıştım, <a tag' inin içindeki şeyler değiştiğinde illa fazladan pattern mi yazmak gerekiyor yoksa bi yolu var mı diye. Benim öğrenmeye çalıştığım buydu, veriyi ne eksik ne fazla çekmeye çalıştığım için sordum da derdimi anlatamadım. Neyse teşekkür ederim yine de , bu yoldan yapcaz o zmn öyle görünüyor
