如何使用BeautifulSoup从网站上获取所有标头?

hii*_*man 4 python beautifulsoup web-scraping python-requests

我正在尝试从一个简单的网站获取所有标头。我的尝试:

from bs4 import BeautifulSoup, SoupStrainer
import requests

url = "http://nypost.com/business"
page = requests.get(url)
data = page.text
soup = BeautifulSoup(data)
soup.find_all('h')
Run Code Online (Sandbox Code Playgroud)

soup.find_all('h')返回[],但是如果我做类似soup.h1或的操作soup.h2,它将返回相应的数据。我只是在错误地调用该方法吗?

phd*_*phd 7

按正则表达式过滤:

soup.find_all(re.compile('^h[1-6]$'))
Run Code Online (Sandbox Code Playgroud)

此正则表达式查找以开头的所有标签,h在后面有一个数字h,然后在该数字之后结束。

  • 我是一个新手,刚发现HTML的最大数量为6。谢谢您的帮助〜 (2认同)