Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python XPath在条件匹配节点之后选择节点_Python_Xpath - Fatal编程技术网

Python XPath在条件匹配节点之后选择节点

Python XPath在条件匹配节点之后选择节点,python,xpath,Python,Xpath,我正在尝试使用XPATH从XHTML文件中提取数据,我有一个场景,我想匹配一个TD元素,然后在它后面获得TD 这是HTML示例 <tr> <td colspan="3" style="border-top:1px solid rgb(234,234,234);padding:0pt 0pt 16px;width:560px">   </td> </tr> <tr> <td colsp

我正在尝试使用XPATH从XHTML文件中提取数据,我有一个场景,我想匹配一个TD元素,然后在它后面获得TD

这是HTML示例

  <tr> 
     <td colspan="3" style="border-top:1px solid rgb(234,234,234);padding:0pt 0pt 16px;width:560px">   </td> 
    </tr> 
    <tr> 
     <td colspan="2" style="font:12px/18px Arial,sans-serif;padding:0 10px 0 0;color:rgb(51,51,51);width:480px" align="right" valign="top"> Item Subtotal: </td> 
     <td style="font:12px/18px Arial,sans-serif;color:rgb(51,51,51);width:80px" align="right" valign="top"> $25.79 </td> 
    </tr> 
    <tr> 
     <td colspan="2" style="font:12px/18px Arial,sans-serif;padding:0 10px 0 0;color:rgb(51,51,51);width:480px" align="right" valign="top"> Shipping &amp; Handling: </td> 
     <td style="font:12px/18px Arial,sans-serif;color:rgb(51,51,51);width:80px" align="right" valign="top"> $0.00 </td> 
    </tr> 
    <tr> 
     <td colspan="2" style="font:12px/18px Arial,sans-serif;padding:0 10px 0 0;color:rgb(51,51,51);width:480px" align="right" valign="top"> Total Before Tax: </td> 
     <td style="font:12px/18px Arial,sans-serif;color:rgb(51,51,51);width:80px" align="right" valign="top"> $25.79 </td> 
    </tr> 
    <tr> 
     <td colspan="2" style="font:14px Arial,sans-serif;padding:10px 10px 10px 0;color:#333;width:480px" align="right" valign="top"> Shipment Total: </td> 
     <td style="color:#333;font:14px Arial,sans-serif;padding:10px 0 5px 0;color:#333;width:80px" align="right" valign="top"> <b> $25.79 </b> </td> 
    </tr> 
在BeautifulSoup中更容易做到这一点,但我受到XPath的限制,如果这是可能的话,有人可以提供帮助吗


谢谢

为了在您选择的TD之后立即获得TD,您可能会对以下XPath表达式感兴趣:

//td[contains(text(), "Shipment Total:")]/following-sibling::td

为了在选择TD之后立即获得TD,您可能会对以下XPath表达式感兴趣:

//td[contains(text(), "Shipment Total:")]/following-sibling::td