没有下一个兄弟姐妹时,如何定位文本?

时间:2018-07-06 10:44:46

标签: web-scraping beautifulsoup

我正在尝试使用BeautifulSoup抓取动态生成的页面,有时我会得到松散的文字,而某些却没有。

如何提取下面的宽松文本,我尝试使用下一个兄弟姐妹,但是该文本未包含在任何标签中。

<div class="div1">

<table class="table1"></table>
<ul></ul>

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt

</div>

1 个答案:

答案 0 :(得分:1)

您可能要做的是将CSS选择器与select div.div1 ul结合使用,并匹配next_sibling

html_doc = """
<div class="div1">

<table class="table1"></table>
<ul></ul>

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt

</div>
"""

from bs4 import BeautifulSoup
result_page = BeautifulSoup(html_doc, 'html.parser')

for text in result_page.select("div.div1 ul"):
    print(text.next_sibling.strip())