2016-03-30 15 views
0

Yapmam gereken şey, html'yi id veya class olmadan birçok etiketle ayrıştırmaktır ve ayrıştırmak istediğim web sitesi sayfalandırma içeriyor.Bir HTML öğesini simpleHTMLdom kullanarak içerdiği şekilde nasıl bulunur?

İşte

i almak istediğiniz HTML parçası örneği:

<tr> 
    <th> number of pages </th> 
    <td> 
     <p> 160 </p> <==== just need the 160 
    </td> 
</tr> 

Birincisi, ben foreach($html->find('tr', 4)->find('td p') as $bookPages)

kullanılan Fakat çünkü ben hata var: 1. sayfa için <tr> böylece 4 konumdayken İyi bir sonuç aldım, ancak diğer sayfalarda 3. sırada ya da 5'de (örneğin), ayrıştırmakta olduğum web sitesinde sayfadan sayfaya eksik bazı bilgileri görebiliyorum.

gibi bir şey gerçekleştirmek için herhangi bir şekilde: Nasıl herhangi bir kimlik veya sınıf ve sonraki etiketi (benim durumumda td p) alırsanız içerdiği ne göre bir HTML öğesi arama

foreach($html_book_page->find('th["the content of the th tag : number of pages"]') as $bookPages) 

?

Hepinize teşekkürler.

cevap

0
for(i = 0; i<$data.find('tr').length; i++){ 

      info[i]=($($data).find('td').eq(i).find('p').text()).replace(/\n\r/g, '').trim(); 


     } 

Bir dizi oluşturmayı deneyin. Çıktı, <p> etiketinden metin olmalıdır ... ör. 160

İlgili konular