第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

xpath 查找包含 1 tr 和 1 th 的行

xpath 查找包含 1 tr 和 1 th 的行

FFIVE 2023-10-30 15:23:37
我需要幫助編寫(xiě) xpath 來(lái)查找僅包含第 1 個(gè)和 1 個(gè) td 的表中的行示例 HTML<!DOCTYPE html><html><head>    <title></title></head><body>    <table>        <tr>            <th>test</th>            <td>abc</td>        </tr>        <tr>            <th>test1</th>            <td>abc</td>            <td>abc</td>        </tr>            <th>test2</th>            <td>abc</td>    </table></body></html>對(duì)于這個(gè) html,我期望只有第一行和最后一行,如果該行包含 th 和 td 以外的任何內(nèi)容,則應(yīng)跳過(guò)'//table/tr[th and td]' 我到達(dá)了這個(gè) xpath 但這將包括重復(fù)如果該行包含其他或任何東西td則不會(huì)過(guò)濾<a
查看完整描述

2 回答

?
寶慕林4294392

TA貢獻(xiàn)2021條經(jīng)驗(yàn) 獲得超8個(gè)贊

這是可行的——不是很優(yōu)雅,但是有效。我擴(kuò)展了您的示例 html,引入了一些更多有問(wèn)題的節(jié)點(diǎn):


test = """

<!DOCTYPE html>

<html>

<head>

    <title></title>

</head>

<body>

    <table>

        <tr>

            <th>test</th>

            <td>abc</td>

        </tr>

        <tr>

            <th>test1</th>

            <td>abc</td>

            <td>abc</td>

        </tr>

        <tr>

            <th>test2</th>

            <td>abc</td>

        </tr>

        <tr>

            <a>test3</a>

            <td>abcd</td>

        </tr>

        <tr>

            <td>test4</td>

            <td>abcd</td>

        </tr>

    </table>

</body>    """


import lxml.html

doc = lxml.html.fromstring(test)

good_tags = ['th','td']

targs = doc.xpath('//tr')

for targ in targs:

    tr = targ.xpath('.//*')

    if len(tr)==2 and (tr[0].tag != tr[1].tag) and tr[0].tag in good_tags and tr[1].tag in good_tags:            

        print(lxml.html.tostring(targ).decode())

輸出:


<tr>

            <th>test</th>

            <td>abc</td>

        </tr>


<tr>

            <th>test2</th>

            <td>abc</td>

        </tr>


查看完整回答
反對(duì) 回復(fù) 2023-10-30
?
絕地?zé)o雙

TA貢獻(xiàn)1946條經(jīng)驗(yàn) 獲得超4個(gè)贊

一班 XPath :

//tr[count (./*)=2 and count(./th)=1 and count(./td)=1]


查看完整回答
反對(duì) 回復(fù) 2023-10-30
  • 2 回答
  • 0 關(guān)注
  • 168 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)