获取已知元素beautifulsoup之外的文本

时间:2014-09-02 10:23:16

标签: python python-2.7 html-parsing beautifulsoup

我想抓一个网页,我根本不想使用正则表达式。我正在使用beautifulsoup来处理刮擦。我有这个来源:

<TD WIDTH="50%" VALIGN="TOP"><span class="sections">Date:</span>
13 August 2014
      <br>&nbsp;<br><span class="sections">Application Deadline:</span>
     <font color="maroon">
      28 August  2014</font>

      <font color="#990066">Application closed / under review</font>

<br>&nbsp;<br><span class="sections">Duty Station:&nbsp;</span>
Multiple duty stations
<br>
&nbsp;

从这个来源,我想抓 2014年8月13日

我可以通过它的类找到span元素搜索:soup.findAll('span',{'class':'sections'}获取第一个元素,并检查文本是否为“Date:”但这只是给了我元素。我想要获得的文本就在它之下,我唯一能做的就是按td进行搜索,但这不是我想要的,因为一个{{1}内有很多元素和文本}}

我知道我可以使用正则表达式来完成它,但我真的只想用beautifulsoup来做它。

提前致谢

1 个答案:

答案 0 :(得分:3)

找到它。

获得元素<span class="sections">Date:</span>后 我必须做element.nextSibling 比我想象的要容易。