我正在尝试查找 HTML 的这些部分,但仅查找特定月份 (04) 的部分,以链接末尾区分。
<td class="">
<div class="dayContainer">
<a href="/parks/magic-kingdom/calendardayview/?asmbly_day=20120402">
<p class="day"> 2</p>
<p class="moreLink">
Park Hours
<br />
8:00 AM - 1:00 AM
<br /><br/>
Extra Magic Hours
<br />
7:00 AM - 8:00 AM
<br /><br/>
</p>
</a>
</div>
</td>
我可以使用 findAll('div', attrs={'class':'dayContainer'}) 找到所有日期,但这会为我提供网站内的所有日期。我尝试关注 this例如,但我尝试的一切都给我留下了空白结果。这是我现在要查找的部分:
days = soup.findAll(lambda date: date.name == 'a' and date.text[-4:-2] == '04' and date.findParent('div', attrs={'class':'dayContainer'}))
print days
知道我哪里出错了吗?谢谢! 这是 the site如果有人需要的话。
请您参考如下方法:
查看您发布的站点链接后,我发现每个月的日历实际上包含在名为“month_name2012”的 div 中。
所以对于 4 月,您可以:
april_c = soup.find('div', attrs={'id':'april2012'})
parking_apr = april_c.findAll('div', 'dayContainer')
for item in parking_apr:
print item.text
这会给你:
1Park Hours8:00 AM - 12:00 AMExtra Magic Hours7:00 AM - 8:00 AMExtra Magic Hours12:00 AM - 3:00 AM
2Park Hours8:00 AM - 1:00 AMExtra Magic Hours7:00 AM - 8:00 AM
3Park Hours8:00 AM - 1:00 AMExtra Magic Hours7:00 AM - 8:00 AM
4Park Hours8:00 AM - 1:00 AMExtra Magic Hours7:00 AM - 8:00 AM
5Park Hours8:00 AM - 1:00 AMExtra Magic Hours7:00 AM - 8:00 AM
6Park Hours8:00 AM - 12:00 AMExtra Magic Hours7:00 AM - 8:00 AMExtra Magic Hours12:00 AM - 3:00 AM
7Park Hours8:00 AM - 1:00 AMExtra Magic Hours7:00 AM - 8:00 AM
8Park Hours8:00 AM - 12:00 AMExtra Magic Hours7:00 AM - 8:00 AMExtra Magic Hours12:00 AM - 3:00 AM
....
