【发布时间】:2019-11-20 05:23:05
【问题描述】:
我正在尝试使用 BeautifulSoup 提取以下网页上的表格:
https://www.indiapost.gov.in/VAS/Pages/PMODashboard/DistributionOfPostOffices.aspx
我尝试使用的代码是:
import pandas as pd
from urllib.request import urlopen
from bs4 import BeautifulSoup
url = "https://www.indiapost.gov.in/VAS/Pages/PMODashboard/DistributionOfPostOffices.aspx"
html = urlopen(url)
soup = BeautifulSoup(html, 'lxml')
type(soup)
table = soup.find('table', {'class' : 'tbl'})
#extract rows:
rows = soup.find_all('tr')
最后一行应该打印带有 HTML 标记的行名的输出(即 Sl No.、Head Post Office 等),但它只打印一个空列表。我哪里错了?
【问题讨论】:
-
表格是javascript渲染的,你应该考虑使用selenium来检索JS渲染的页面。
标签: python html web-scraping beautifulsoup