如何获得两个类名的表中元素的计数?

2024-10-02 04:28:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要从一个表中获得tds和trs的len,我使用xpath,但是每当我运行代码时,我得到的值与正确的值完全不同

下表如下:

<table class="kktable stats">
<tbody>
<tr>
<td></td>
...
</tr>

我当前的尝试:

tr_ = driver.find_elements_by_xpath('//table/tbody/tr')
tds_ = driver.find_elements_by_xpath('//table//tbody//tr[1]//td')

print(len(tr_), len(tds_))

“这个应该输出34,13,但是它输出43,35,我需要一些非绝对的东西,因为页面每天都在变化!”!你知道吗

the class of the table is kktable stats

我目前正在使用下面的方法/

table = '/html/body/div[4]/div[2]/div[6]/div[3]/div/div/div/div[3]/div/table/tbody'
trs = driver.find_elements_by_xpath(table+"/tr")
tds = driver.find_elements_by_xpath(table+"/tr[1]/td")

输出正确=>;34,13

我也试过:

tds_ = driver.find_elements_by_xpath('//table[@class="kktable.stats"]//tbody//tr[1]//td')

但不幸的是它返回0


Tags: divbylenstatsdrivertableelementsfind
1条回答
网友
1楼 · 发布于 2024-10-02 04:28:53

要获取<tr>的计数,可以使用:

  • 选择程序:

    trs = driver.find_elements_by_css_selector("table.kktable.stats > tbody tr")
    print(len(trs))
    
  • XPath:

    trs = driver.find_elements_by_xpath("//table[@class='kktable stats']/tbody//tr")
    print(len(trs))
    

要从第一个<tr>获取<td>的计数,可以使用:

  • 选择程序:

    trs = driver.find_elements_by_css_selector("table.kktable.stats > tbody > tr td")
    print(len(tds))
    
  • XPath:

    tds = driver.find_elements_by_xpath("//table[@class='kktable stats']/tbody/tr//td")
    print(len(tds))
    

相关问题 更多 >

    热门问题