我正在尝试抓取我作为学习实验编写的文件。它看起来像这样:
<div class="container">
<div class="date">1st</div>
<div class="events">
<div class="meeting">
<span class="name">Bob</span>
</div>
</div>
<div class="date">2nd</div>
<div class="event">
<div class="meeting">
<span class="name">Emma</span>
<span class="name">Frank</span>
<span class="name">Charlie</span>
</div>
</div>
<div class="date">3rd</div>
<div class="event">
<div class="meeting">
<span class="name">Lisa</span>
<span class="name">Tony</span>
</div>
</div>
</div>
我想抓取数据,以便它返回具有关联日期的跨度。例如:
data = [['1st', 'bob'], ['2nd', 'Emma', 'Frank' 'Charlie'], ['3rd', 'Lisa', 'Tony']]
我遇到的问题是 Divdate
和event
在同一级别上的位置,当我使用以下内容进行刮擦时:
for data in schedule_soup.find_all('div', 'container'):
for date in data.find_all('div', 'date'):
print(date)
for name in data.find_all('span', 'name'):
print(name)
我明白了:
<div class="date">1st</div>
<div class="date">2nd</div>
<div class="date">3rd</div>
<span class="name">Bob</span>
<span class="name">Emma</span>
<span class="name">Frank</span>
<span class="name">Charlie</span>
<span class="name">Lisa</span>
<span class="name">Tony</span>