首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用python抓取网页

用python抓取网页
EN

Stack Overflow用户
提问于 2020-04-22 14:10:47
回答 3查看 35关注 0票数 0

下面是代码,它生成我想要的结果,但不是以输出结果的方式。

代码语言:javascript
运行
复制
   import requests
    from bs4 import BeautifulSoup
    url = 'https://en.wikipedia.org/wiki/2020_coronavirus_pandemic_in_Florida'

    fl = requests.get(url)
    fl_soup = BeautifulSoup(fl.text, 'html.parser')
    block = fl_soup.findAll('td', {'class': 'bb-04em'})

    for name in fl_soup.findAll('td', {'class': 'bb-04em'}):
        print(name.text)

输出

2020年-04-21

27 869(+3.0%)

867

我希望产出像这个2020-04-21 27,869(+3.0%) 867。

EN

回答 3

Stack Overflow用户

发布于 2020-04-22 14:14:00

以下是你想做的事:

代码语言:javascript
运行
复制
import requests
from bs4 import BeautifulSoup
url = 'https://en.wikipedia.org/wiki/2020_coronavirus_pandemic_in_Florida'

fl = requests.get(url)
fl_soup = BeautifulSoup(fl.text, 'html.parser')

div_with_table = fl_soup.find('div', {'class': 'barbox tright'})
table = div_with_table.find('table')

for row in table.findAll('tr'):
    for cell in row.findAll('td', {'class': 'bb-04em'}):
        print(cell.text, end=' ')
    print()  # new line for each row
票数 0
EN

Stack Overflow用户

发布于 2020-04-22 15:25:22

在访问每个<td>之前,尝试通过每个<tr>获取数据,您将得到每个表行的信息。然后你可以在<td>或者你想要的任何地方搜索。

票数 0
EN

Stack Overflow用户

发布于 2020-04-22 21:34:17

对于最后一个print语句,包括end参数。默认情况下,print语句有end='\n‘

print(name.text, end=' ')

这将为您提供所需的输出。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61367221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档