首页 > 解决方案 > 提取文本:在一个带有 Beautiful Soup 的元素之后

问题描述

我想提取元素:after的文本。<strong>

 <li data-toggle="tooltip" title="" data-original-title=""><strong>06:25</strong> &nbsp;vP</li>

我试过以下

 medmar_live_departures_table = list(soup.select('li.tratta'))
 for li in medmar_live_departures_table:     
    info = li.text

但我收到了两个文本。我可以使用 re 来拆分字符串,但我想知道是否有更有效和更直接的方法来做这件事。

Output
16:40  vP

Desired output
vP

标签: pythonweb-scrapingbeautifulsouphtml-parsing

解决方案


您可以获得每个的最后一个文本子节点,li如下所示:

medmar_live_departures_table = soup.select('li.tratta')
for li in medmar_live_departures_table :      
    info = [text for text in li.stripped_strings][-1]
    print(info)

推荐阅读