2017-10-06 68 views
0

我搜索並嘗試了幾種方案來解決這個問題,但他們沒有工作,XPath的HTML獲取特定標籤元素

這是我的情況的html:

<div class="entry"> 
 

 
<p align="center"><span ><b>CAT-1</b></span></p> 
 

 
<p align="center">car-1 <a href="" target="_blank" >link</a> </p> //need this 
 
<p align="center">car-2 <a href="" target="_blank" >link</a> </p> //need this 
 
<p align="center">car-3 <a href="" target="_blank" >link</a> </p> //need this 
 

 

 
<p align="center"><span><b>CAT-2</b></span></p> 
 

 
<p align="center">car-1 <a href="" target="_blank">link</a> </p> 
 
<p align="center">car-2 <a href="" target="_blank">link</a> </p> 
 
<p align="center">car-3 <a href="" target="_blank">link</a> </p> 
 

 
</div>

我想提取只是a href他們提到//need this

我已經在使用:

$xpath->query("//p[@align='center']//a[@target='_blank']/text()"); 

但其提取所有a href

有沒有辦法得到它?即使包括跨度CAT-1沒有probleme,僅僅指剛需^ h的href裏面

+0

所有的hrefs在你的輸入中都是空的 – RomanPerekhrest

+0

是的,我知道,只是解釋 – hertanet

回答

0

嘗試下面的XPath來獲取所需的文本內容:

//p[@align='center']//a[@target='_blank']/text()[following::b[.='CAT-2']] 

這與排除與"CAT-2"文本段落後如下鏈接

+0

我試試這個,但不工作 – hertanet

+0

你是什麼意思的「不工作」?你得到的輸出是什麼? – Andersson

+0

什麼都沒有改變我得到它的所有標籤,你做了什麼呢? – hertanet