BeautifulSoup选择器:选择包含多个单词的HTML元素
P粉878510551
P粉878510551 2023-08-13 19:25:41
[HTML讨论组]
<p>有没有办法让我使用BeautifulSoup来获取包含多个单词的标签的文本?</p> <p>例如,如果我有以下HTML:</p> <pre class="brush:php;toolbar:false;">&lt;div&gt; &lt;div&gt; &lt;a&gt;hello there&lt;/a&gt; &lt;a&gt;hi&lt;/a&gt; &lt;/div&gt; &lt;a&gt;what's up&lt;/a&gt; &lt;a&gt;stackoverflow&lt;/a&gt; &lt;/div&gt;</pre> <p>...我只想获取<code>hello there what's up</code></p>
P粉878510551
P粉878510551

全部回复(1)
P粉824889650

你绝对可以使用BeautifulSoup来提取包含多个单词的HTML标签中的文本。在你的例子中,你想要从包含多个单词内容的<a>标签中提取文本。以下是使用Python中的BeautifulSoup实现这一目标的方法。

from bs4 import BeautifulSoup

html = '''
<div>
    <div>
        <a>hello there</a>
        <a>hi</a>
    </div>
    <a>what's up</a>
    <a>stackoverflow</a>
</div>
'''

soup = BeautifulSoup(html, 'html.parser')

target_tags = soup.find_all('a')  # 找到所有的<a>标签
multi_word_texts = []

for tag in target_tags:
    if ' ' in tag.get_text():  # 检查标签文本是否包含空格(表示多个单词)
        multi_word_texts.append(tag.get_text())

result = ' '.join(multi_word_texts)
print(result)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号