如何使用BeautifulSoup仅获取维基百科页面上所有表格的第一行数据?

独立 Kid sagar solanki

我正在尝试从这个Wikipedia 页面抓取数据

下面是我目前使用的代码。

代码:

from bs4 import BeautifulSoup
import urllib.request

def make_soup(url):
    thepage = urllib.request.urlopen(url)
    soupdata = BeautifulSoup(thepage, "html.parser")
    return soupdata

soup = make_soup("https://en.wikipedia.org/wiki/2015_in_hip_hop_music")
albumdatasaved = ""
for record in soup.findAll('tr'):
    albumdata = ""
    for data in record.findAll('td'):
        albumdata = albumdata + "," + data.text
    albumdatasaved = albumdatasaved + "\n" + albumdata[1:]

print(albumdatasaved)

我只需要每个表的第一行数据,如下图所示。我怎么能做到这一点?

桌子

塔奈丁

这是针对您的问题的完全有效的代码,使用 API 是更好的方法,但我知道您需要一个快速的解决方案......

from bs4 import BeautifulSoup
import urllib.request


def make_soup(url):
    thepage = urllib.request.urlopen(url)
    soupdata = BeautifulSoup(thepage, "html.parser")
    return soupdata

soup = make_soup("https://en.wikipedia.org/wiki/List_of_Internet_top-level_domains")

albumdatasaved = ""
for record in soup.findAll('tr'):
    for data in record.findAll('td'):
        if data.text.strip() and data.text[0] == ".":
            albumdatasaved += data.text.strip() + "\n"
            break

print(albumdatasaved)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章