【问题标题】:PHP XPATH parse HTML how to get inner text BEFORE another nested tagPHP XPATH解析HTML如何在另一个嵌套标签之前获取内部文本
【发布时间】:2014-05-17 19:30:04
【问题描述】:

在找到下面的代码之前,我使用 xpath 解析 html 没有问题。

我通常使用“textContent”属性之一,我通过 ax xpath 查询得到了这个 td,但我只需要在 <img 标记之前获取文本。

   <td class="rowdispari">
                                ZONA NON SERVITA QUOTIDIANAMENTE-PROSSIMA CONSEGNA

                                                &nbsp;
                        <img onmouseover="caricaTool()" src="template/img/infoTip.png" width="17">
                            <div class="bottom" id='tooool'>
                                <div class="contenuto">
                                    <div class="top">
                                        <font class="testobold"><font class='testoblubold'>ZONA NON SERVITA QUOTIDIANAMENTE - PROSSIMA CONSEGNA </font><br>La località di destinazione non è tra quelle servite quotidianamente da SDA. La consegna avverrà al più presto possibile, compatibilmente con le operazioni logistiche.</font>
                                        <p>&nbsp;<br><a href="javascript:chiudiTool()"><u>Chiudi</u></a>
                                    </div>
                                </div>
                            </div>

                            </td>

【问题讨论】:

    标签: php html string parsing xpath


    【解决方案1】:

    你可能会使用:

    //td[@class="rowdispari"][img[@src="template/img/infoTip.png"]]/text()[1]
    

    或:

    //td[@class="rowdispari"]/text()[following-sibling::img[@src="template/img/infoTip.png"]][1]
    

    【讨论】:

      【解决方案2】:

      假设您已经有 XPath 来获取外部 &lt;td&gt; 元素,您可以简单地将 XPath 附加到 /text()[1] 以获取当前 &lt;td&gt; 元素的直接子节点的第一个文本节点:

      path_to_td_here/text()[1]
      

      更具体的例子:

      //td[@class='rowdispari']/text()[1]
      

      【讨论】:

        猜你喜欢
        • 2014-02-22
        • 1970-01-01
        • 1970-01-01
        • 2012-04-02
        • 2015-09-17
        • 2017-09-24
        • 1970-01-01
        • 2020-11-21
        • 2015-07-20
        相关资源
        最近更新 更多