首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用python从HTML代码中提取以"icon“开头的单词

如何使用python从HTML代码中提取以"icon“开头的单词
EN

Stack Overflow用户
提问于 2019-05-09 02:58:22
回答 2查看 232关注 0票数 -2

我需要一个python代码来提取所选单词使用python。

代码语言:javascript
复制
<a class="tel ttel">
<span class="mobilesv icon-hg"></span>
<span class="mobilesv icon-rq"></span>
<span class="mobilesv icon-ba"></span>
<span class="mobilesv icon-rq"></span>
<span class="mobilesv icon-ba"></span>
<span class="mobilesv icon-ikj"></span>
<span class="mobilesv icon-dc"></span>
<span class="mobilesv icon-acb"></span>
<span class="mobilesv icon-lk"></span>
<span class="mobilesv icon-ba"></span>
<span class="mobilesv icon-nm"></span>
<span class="mobilesv icon-ba"></span>
<span class="mobilesv icon-yz"></span>
</a>

我需要提取以"icon“开头的单词。

我需要的输出是

icon-hg、icon-rq、icon-ba、icon-rq、icon-ba、icon-ikj、icon-dc、icon-acb、icon-lk、icon-ba、icon-nm、icon-ba、icon-yz

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-05-09 03:18:23

对于你的特定情况,你可以像下面这样得到它,但是我建议使用漂亮的汤来处理广泛的问题,记住,特殊情况并不够特殊,不足以打破规则。

代码语言:javascript
复制
text = """
<a class="tel ttel">
<span class="mobilesv icon-hg"></span>
<span class="mobilesv icon-rq"></span>
<span class="mobilesv icon-ba"></span>
<span class="mobilesv icon-rq"></span>
<span class="mobilesv icon-ba"></span>
<span class="mobilesv icon-ikj"></span>
<span class="mobilesv icon-dc"></span>
<span class="mobilesv icon-acb"></span>
<span class="mobilesv icon-lk"></span>
<span class="mobilesv icon-ba"></span>
<span class="mobilesv icon-nm"></span>
<span class="mobilesv icon-ba"></span>
<span class="mobilesv icon-yz"></span>
</a>
"""

result = [word.split('"')[0] for word in text.split() if word.startswith('icon')]

print(result)

输出:

代码语言:javascript
复制
['icon-hg', 'icon-rq', 'icon-ba', 'icon-rq', 'icon-ba', 'icon-ikj', 'icon-dc', 'icon-acb', 'icon-lk', 'icon-ba', 'icon-nm', 'icon-ba', 'icon-yz']
票数 0
EN

Stack Overflow用户

发布于 2019-05-09 03:38:43

如果您使用的是BeautifulSoup。这将从图标到qoute (")搜索字符串。

代码语言:javascript
复制
from bs4 import BeautifulSoup
import re
s = """<a class="tel ttel">
<span class="mobilesv icon-hg"></span>
<span class="mobilesv icon-rq"></span>
<span class="mobilesv icon-ba"></span>
<span class="mobilesv icon-rq"></span>
<span class="mobilesv icon-ba"></span>
<span class="mobilesv icon-ikj"></span>
<span class="mobilesv icon-dc"></span>
<span class="mobilesv icon-acb"></span>
<span class="mobilesv icon-lk"></span>
<span class="mobilesv icon-ba"></span>
<span class="mobilesv icon-nm"></span>
<span class="mobilesv icon-ba"></span>
<span class="mobilesv icon-yz"></span>
</a>"""
soup = BeautifulSoup(s, "html.parser")
for s in soup.findAll("span"):
    s=str(s)
    print(re.search(r'(?=icon-)[^"]*',s).group())

结果:

代码语言:javascript
复制
icon-hg
icon-rq
icon-ba
icon-rq
icon-ba
icon-ikj
icon-dc
icon-acb
icon-lk
icon-ba
icon-nm
icon-ba
icon-yz
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56047365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档