仅循环打印第一个值

时间:2020-04-15 20:43:19

标签: python web-scraping beautifulsoup

我正在尝试为一个案例的值抓取一个站点,但是当我运行该程序时,它仅返回1个值。 ['203,377'],如何获取要返回的其他值

page = requests.get("https://www.theguardian.com/world/ng-interactive/2020/apr/13/coronavirus-map-us-latest-covid-19-cases-state-by-state")
soup = BeautifulSoup(page.content, 'html.parser')
state_table = soup.find(id='co-table-container')
item2 = state_table.find_all(class_='co-table')
case2 = [ c2.find(class_='co-td-cases').get_text() for c2 in item2]
print(case2)

1 个答案:

答案 0 :(得分:0)

这就是我所做的改变

item2 = state_table.find(class_='co-table')
case2 = [ c2.get_text() for c2 in item2.find_all(class_='co-td-cases')]
print(case2)

只有一个class_='co-table',其中有多个class_='co-td-cases',因此对列表的理解也作了相应的修改。