提取特定 a 标签后的文本
Extracting text following a specific a-tag
我在使用 python 从 html 代码中提取文本时遇到问题。代码如下所示:
<div class="...">
<br/><a href="link1.html" title="title1">anchor1</a>text1
<br/><a href="link2.html" title="title2">anchor2</a>important text to extract
<br/><a href="link3.html" title="title3">anchor3</a>text3
...
</div>
我只想提取特定 link 之后的文本。我知道 anchor2 中的一些单词。因此,用 beautiful soup 4 提取 a-tags 之间的内容不是问题。但是在搜索了很多之后,我没有找到只提取我重要的 a-tag 后面的文本的解决方案。
我希望有人有想法。
找到 link,例如,按标题并得到 next_sibling
:
from bs4 import BeautifulSoup
data = """
<div class="...">
<br/><a href="link1.html" title="title1">anchor1</a>text1
<br/><a href="link2.html" title="title2">anchor2</a>important text to extract
<br/><a href="link3.html" title="title3">anchor3</a>text3
...
</div>
"""
soup = BeautifulSoup(data)
print soup.find('a', title='title2').next_sibling
打印:
important text to extract
我在使用 python 从 html 代码中提取文本时遇到问题。代码如下所示:
<div class="...">
<br/><a href="link1.html" title="title1">anchor1</a>text1
<br/><a href="link2.html" title="title2">anchor2</a>important text to extract
<br/><a href="link3.html" title="title3">anchor3</a>text3
...
</div>
我只想提取特定 link 之后的文本。我知道 anchor2 中的一些单词。因此,用 beautiful soup 4 提取 a-tags 之间的内容不是问题。但是在搜索了很多之后,我没有找到只提取我重要的 a-tag 后面的文本的解决方案。
我希望有人有想法。
找到 link,例如,按标题并得到 next_sibling
:
from bs4 import BeautifulSoup
data = """
<div class="...">
<br/><a href="link1.html" title="title1">anchor1</a>text1
<br/><a href="link2.html" title="title2">anchor2</a>important text to extract
<br/><a href="link3.html" title="title3">anchor3</a>text3
...
</div>
"""
soup = BeautifulSoup(data)
print soup.find('a', title='title2').next_sibling
打印:
important text to extract