BeautifulSoup仅返回第一表行

时间:2018-10-03 04:24:46

标签: python beautifulsoup

我正在尝试从this抓取一张桌子 网页。

到目前为止,我可以访问页面,使用机械化单击搜索按钮,但是当我开始使用beautifulsoup解析html时遇到问题。我的代码是:

url = 'http://forestsclearance.nic.in/Wildnew_Online_Status_New.aspx'               
br = mechanize.Browser()
br.open(url)
br.select_form(name='aspnetForm')
page = br.submit(id='ctl00_ContentPlaceHolder1_Button1')
soup = BeautifulSoup(page, 'html.parser')
table = soup.findAll("table", {"id" : "ctl00_ContentPlaceHolder1_tbl"})
print table

如果您查看HTML,则我想要的表在字典中具有ID,但这仅打印第一行的html。我尝试使用findChildren()查找div标签,但它始终返回第一行。有人知道这是为什么发生的,我怎么能抢到整个桌子?谢谢

1 个答案:

答案 0 :(得分:0)

您必须找到所有tr标记,请参见下面的代码。

url = 'http://forestsclearance.nic.in/Wildnew_Online_Status_New.aspx'               
br = mechanize.Browser()
br.open(url)
br.select_form(name='aspnetForm')
page = br.submit(id='ctl00_ContentPlaceHolder1_Button1')
soup = BeautifulSoup(page, 'html.parser')
table = soup.findAll('tr')
print table
相关问题