使用beautifulsoup4(第2行,第1列和第6列)从html表中提取值

时间:2013-12-18 16:53:00

标签: python beautifulsoup html-tableextract

我是python的新手,需要一些从HTML表格中提取特定单元格值的指导。

我正在处理的网址here

我希望仅在Month和Settlement列中获取前5个值,然后将其显示为:

"MAR 14:426'6"

我面临的问题是:

  1. 如何让循环从表格中的第3个“TR”开始
  2. 如何仅获取td [0]和td [6]的值。
  3. 如何将循环限制为仅检索5行的值
  4. 这是我正在处理的代码:

    tableData = soup1.find("table", id="DailySettlementTable")
    for rows in tableData.findAll('tr'):
        month = rows.find('td')
        print month
    

    感谢您并感谢任何形式的指导!

1 个答案:

答案 0 :(得分:1)

您可能想要使用slicing

以下是代码的修改代码段:

table = soup.find('table', id='DailySettlementTable')

# The slice notation below, [2:7], says to take the third (index 2)
# to the eighth (index 7) values from the rows we get.
for rows in table.find_all('tr')[2:7]:
    cells = rows.find_all('td')
    month = cells[0]
    settle = cells[6]

    print month.string + ':' + settle.string