1

我正在 Xpathing 我拥有的 DOMDocument 文件。这个domdocument的一般模式如下:

<h2> Title info </h2>
<div> .... </div>
<p> ...</p>
<div class = format_text> 
  <p> 
    <a href= "http://link..."><img src = "http://sourceofimageOnline.com"></a>
  </p>
</div>
<h2> 2nd title</h2>
<div> .... </div>
<p> ...</p>
<div class = format_text> 
  <p> 
    <a href= "http://link..."><img src = "http://sourceofimageOnline.com"></img></a> 
    <a href = "http://linkanother.."><img src = "http://sourceofimageonline.com"</img></a>
  </p>
</div>

关键是返回超链接图像的标题和 src 属性。本质上,我将其渲染为:

标题 1 图像 URI 1 标题 2 图像 URI 2 图像 URI 3 ... ..

现在可以使用以下方法轻松检索标题

DomDocument->getElementsByTagNames('h2')

并且 img src 由 XPATH 查询检索:

//div[@class = "format_text"]/p/a/img/@src

这将返回我需要的所有信息。但是,我试图让 img src 与它们所属的标题相关联,这给我带来了挑战。由于它们是独立检索的,因此我无法理解我需要执行哪种 Xpath 查询来检索它们以满足上述约束。

4

1 回答 1

1
  1. 使用 XPath 表达式获取数组/html/body//h2
  2. 用另一个 XPath 表达式迭代这个数组
  3. 参考当前h2.和参考第一个链接

    ./../div[@class='format_text']/p/a[$counter]/img

XPath 表达式 其中$counter是数组 id。

于 2012-06-04T20:19:20.173 回答