用LXML和XPATH在Python中解析选择表行



以下是我希望解析的HTML文件的结构

<tr data-mod-primary="true">
    <td>'some text'
<tr>
    <td>'some text'
<tr>
    <td>'some text'
<tr data-mod-primary="true">
    <td>'some text'

我对仅在<tr data-mod-primary="true">下的文本中解析并忽略其他<tr>'S

感兴趣

我通过.xpath('//tr/td/text()')获取所有<tr>文本,但这不是我想要的。在研究解决方案后,我尝试了以下代码:

.xpath('//tr[contains(@data-mod-primary="true",None)]/td/text()')

,但这也使我在所有<tr>下的文本基本上与.xpath('//tr/td/text()')

基本相同

任何帮助将不胜感激。谢谢。

您可以使用@attr=value提取特定的TR标签:

//tr[@data-mod-primary='true']/td/text()

或使用contains,它将是:

//tr[contains(@data-mod-primary, 'true')]/td/text()

最新更新