代码仅输出一行而不是表格

时间:2019-02-01 16:14:42

标签: python python-3.x

我一直在尝试刮擦具有多行和多列的表。下面是我使用的代码,第一次运行时,结果是预期的,但是由于它只返回一行数据,所以列是预期的。从第一次运行开始,我看不到有什么变化,但是我的python非常基本,因此我可能会遗漏一些明显的东西。

page_request = requests.get(url)    
soup = BeautifulSoup(page_request.content, 'html.parser')
table = soup.find_all('table')[0]
rows = table.find_all('tr')

for row in rows:
    cols = row.find_all('td')
    cols = [x.text.strip() for x in cols]

我确定它很简单,但是任何帮助将不胜感激。

谢谢

1 个答案:

答案 0 :(得分:0)

尝试类似的事情:

page_request = requests.get(url)    
soup = BeautifulSoup(page_request.content, 'html.parser')
table = soup.find_all('table')[0]
rows = table.find_all('tr')

data = [[td.text.strip() for td in row.find_all('td')] for for row in rows]