2017-08-01 43 views
-1

我想從包含很多表格的div中獲取第一個表格的數據,我該怎麼做?美麗的湯獲取第一個表格中的數據

<div class="mainCont port_hold "> 
    <table class="tblpor"> 
     <tr><th>Company</th><th>Code</th></tr> 
     <tr><td>ABC </td><td>1234</td></tr> 
     <tr><td>XYZ </td><td>6789</td></tr> 
    </table> 

    <table class="tblpor MT25"> 
     <tr><th>Company</th><th>Industry</th></tr> 
     <tr><td>ABCDEF </td><td>aaaaa </td></tr> 
     <tr><td>STUVWX </td><td>bbbbb </td></tr> 
    </table> 
</div> 

我需要爲表類=「tblpor」和之後的數據是我創建的代碼,但它給我的DIV中的所有表中的數據。

for x in soup2.find('table', class_='tblpor'): 
    for y in soup2.findAll('tr'): 
     for z in soup2.findAll('td'): 
      print(z.text) 

請幫忙。

問候,babsdoc

+0

'soup2.findAll',在整個document_中搜索東西。 – ForceBru

+0

如果那個答案做了你想要的,那麼你應該將它標記爲'接受'。 –

+1

謝謝Bill,它只會讓你在幾分鐘後接受答案。 – babsdoc

回答

4

您可以使用CSS選擇器來選擇第一個表,如下所示。

first_table = soup.select_one("table:nth-of-type(1)") 

從這裏攜帶在細胞中的每一行中提取數據是直接的。顧名思義,

+0

謝謝@Oluwafemi。我知道了 ! – babsdoc