[]

Veri Çekme 2

bugün bir soru daha sormuştım. şimdi bir sorum daha var:

codeupload.com

www.sporx.com isimli siteden, skor çekmeye çalışıyorum. Yukarıda tek bir tablo satırının kodunu verdim. Amacım <td> </td> lerin aralarındaki verileri almak.

Daha önce de basit scriptlerle çok veri çekmiştim ama bunda sorunum var:
boşluklar.

Kodda da göreceğiniz gibi td'ler satır satır yazılmış ve her satıra tab'la boşluk atamışlar. Dolayısıyla ben de bu boşluklara (.*?) atadım ancak yine de tanımadı. Kısaca bu kod satır satır yazıldığı için veriyi çekemiyorum.


en son: codeupload.com

bu şekilde denedim. Her bir satıra ve satır başındaki boşluğa da (.*?) vermeyi denedim ama yine de çekemedi veriyi. çünkü göremiyor. Nasıl düzgün çekebilirim sizce?

 
html'i yükledikten sonra tüm \t \n karakterlerini bir temizle, sonra uygula mevcut kodunu.

<tr>

<td>

3-1

</td> <td>

gibi bir kod

<tr><td>3-1</td><td>

haline döner, gerisini de halledersin :)
  • turkay  (17.03.12 14:39:12) 
ilk kez duydum bi temizleme işini :D

tüm \t \n karakterleri nasıl temizlenir ve bunları temizlemek ne demek oluyor :) şöyle hafiften bir anlatırsan acaip memnun olurum, mantığını anlamam çok daha iyi olur yani :)


edit: tamam şimdi anladım. uykuya dalmıştım mal gibi uyanınca anlamamıştım. tamamdır söylediğin gibi yapıcam.
  • kameramotor  (17.03.12 14:48:03 ~ 14:54:48) 
öncelikle \t ve \n 'ler tab ve enter'lar.

file_get_contents (ya da benzeri bir method) ile aldığın html sayfasını $sayfa diye bir string'e atıyorsun.

$sayfa = f_g_c(bıdıbıdı.com/bıdı.html);

sonra

str_replace ile \t ve \n'leri siliyorsun;

$sayfa = str_replace("\t","",$sayfa);
$sayfa = str_replace("\n","",$sayfa);

Sonra regex komutları daha verimli çalışıyor.

Neyse, az önceki mesajımdan sonra şunu kullanmanı şiddetle öneriyorum;

Çok basit, ve regex'le filan uğraşmana gerek yok.

simplehtmldom.sourceforge.net
  • turkay  (17.03.12 15:01:17) 
bu regex yerine önerdiğin şeyi hemen inceleyip bakayım tam olarak ihtiyacımı karşılıyorsa da inanılmaz teşekkür ederim.

bu arada \t \n önerisi için de inanılmaz teşekkür ederim.
  • kameramotor  (17.03.12 15:04:37) 
1
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler angelus, Artibir, aychovsky, baba jo, basond, compumaster, deckard, duyulmasi gerektigi kadar, fader, fraise, groove salad, kahvegibi, kaymaktutmayansicaksut, kibritsuyu, monstro, pandispanya, robin, ron dennis
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır. Skimlinks ile linkler üzerinden yönlendirme payı alınmaktadır.