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

Python 使用beautifulsoup4从html表中提取值(第2行之后,第1列和第6列),python,beautifulsoup,html-tableextract,Python,Beautifulsoup,Html Tableextract,我是python新手,需要一些关于从HTML表的特定单元格中提取值的指导 可以找到我正在处理的URL 我希望仅在月份和结算列中获取前5个值,然后将其显示为: "MAR 14:426'6" 我面临的问题是: 如何使循环从表中的第三个“TR”开始 如何仅获取td[0]和td[6]的值 如何限制循环仅检索5行的值 这是我正在研究的代码: tableData = soup1.find("table", id="DailySettlementTable") for rows in tableData.f

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

可以找到我正在处理的URL

我希望仅在月份和结算列中获取前5个值,然后将其显示为:

"MAR 14:426'6"
我面临的问题是:

  • 如何使循环从表中的第三个“TR”开始
  • 如何仅获取td[0]和td[6]的值
  • 如何限制循环仅检索5行的值
  • 这是我正在研究的代码:

    tableData = soup1.find("table", id="DailySettlementTable")
    for rows in tableData.findAll('tr'):
        month = rows.find('td')
        print month
    
    感谢您,并感谢任何形式的指导

    您可能想使用

    下面是您的代码的修改片段:

    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
    

    将所有数据提取到列表列表中,然后获取所需的字段可能会更干净、更容易。当然,它的性能并没有那么好,但你可能还不需要担心,尤其是因为你是pythonThanks的新手Chris!工作起来很有魅力!