在html标签之后获取价值

时间:2018-08-08 11:31:58

标签: python web-scraping beautifulsoup

我正在使用python和beautifulsoup模块又名bs4。我要抓取的页面具有以下格式:

<div class="Halls_spec">
   <b>Hall1</b> Thurs.-Wedn.: 21.30

我正在使用以下代码来获取信息:

movie_date = table.select_one("div.Halls_spec")  
movieDate=(movie_date.text.strip())

我在其中获得以下字符串的地方:Hall1 Thurs.-Wedn. 21.30

我应该如何分别获得大厅名称和日期值?

1 个答案:

答案 0 :(得分:1)

您可以将 b 标记与 next_sibling 一起使用以提取日期。

movie_date = table.select_one("div.Halls_spec")
movie_date.b.text.strip()
# 'Hall1'
movie_date.b.next_sibling
# ' Thurs.-Wedn.: 21.30'

或者您可以使用 next_elements 获取可以迭代的生成器对象:

for val in movie_date.b.next_elements:
     print(val)

# Hall1
#  Thurs.-Wedn.: 21.30