我的 html 中有大量的 div 类。每个 div 类都包含一个 h3 类,其中包含一个 div aria-label,我想在 python 文件中抓取其文本。我已经能够创建外部 div 的列表,但我不确定如何在每个 div 内找到和使用 aria-label。
下面是我到目前为止的代码,并附上html文件的图片
import requests
from bs4 import BeautifulSoup
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36'}
url = "https://artsci.calendar.utoronto.ca/search-courses?page=0"
r = requests.get(url, headers = headers)
soup = BeautifulSoup(r.text, 'html.parser')
courses = soup.find_all('div', {'class': 'views-row'})
course_titles = []
for item in courses:
# locate and add item's aria-label to the course_titles list
您可以使用 CSS 选择器 和
bs4的
select
或 select_one
方法:
labels = [d.get('aria-label') for d in soup.select('div.views-row > h3 > div')]