2017-10-19 113 views
0

文本我想从这个html页面部分捕字“铜奖”:如何捕捉从HTML页面

<tr class=""> 
    <td align="left" csk="Nikpai,Rohullah"><a href="/olympics/athletes/ni/rohullah-nikpai-1.html">Rohullah Nikpai</a></td> 
    <td align="right" >25</td> 
    <td align="left" ><a href="/olympics/summer/2012/TKW/mens-featherweight.html">Men's Featherweight</a></td> 
    <td align="right" csk="3">3T </td> 
    <td align="left" class=" Bronze" csk="1"><strong>Bronze</strong></td> 
</tr> 

我尝试不同的代码,但我在意图失败。许多尝试之一是以下几点:

foreach($html4->find('td align="left" strong') as $tag4) { 


           echo $prova = $tag4->innertext . "\n"; 

          } 

其中html4是整个html页我必须处理。

+2

什么类是'$ html4'一个instanceof? – delboy1978uk

回答

0

有了下面的代码,你可以得到的类名“铜奖”

<?php 
$html='<tr class=""> 
    <td align="left" csk="Nikpai,Rohullah"><a href="/olympics/athletes/ni/rohullah-nikpai-1.html">Rohullah Nikpai</a></td> 
    <td align="right" >25</td> 
    <td align="left" ><a href="/olympics/summer/2012/TKW/mens-featherweight.html">Mens Featherweight</a></td> 
    <td align="right" csk="3">3T </td> 
    <td align="left" class=" Bronze" csk="1"><strong>Bronze</strong></td> 
</tr>'; 


$dom = new DOMDocument(); 
@$dom->loadHTML($html); 
foreach($dom->getElementsByTagName('td') as $link) { 
     echo trim($link->getAttribute('class'),' ');    
} 
?> 

或者,如果你喜欢的节点值,而不是类名和CSK attribut总是1:

foreach($dom->getElementsByTagName('td') as $link) { 
    if ($link->getAttribute('csk')=="1"){ 
     echo $link->nodeValue; 
    } 
}