Python中文
首页
教程
问答
标签
搜索
登录
注册
如何使用beautifulsoup获得span中的多个类?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我试图用beautifulsoup在<code><p></code>中获得span类</p> <p>HTML有点像这样</p> <pre><code>... <p class="card-list"> <span class="span1 class1"></span> <span class="span2 class2"></span> <span class="span3 class3"></span> <span class="span4 class4"></span> </p> </code></pre> <p>我使用的代码是</p> <pre><code>soup = BeautifulSoup(page.read(), "html.parser") services = soup.find_all('li', {'class': 'card-list'}) for eachclass in services: classes = [] for spans in eachclass.find('p', {'class':'card-info'}): for element in spans.find_all(class_=True): classes.extend(element["class"]) print(classes) </code></pre> <p>我得到的结果是</p> <pre><code>classes = ["span1", "class1", "span2", "class2","span3", class3","span4", "class4"] </code></pre> <p>我想要的是</p> <pre><code>classes = ["span1 class1", "span2 class2","span3 class3","span4 class4"] </code></pre> <p>还有其他的<code><span></code>。我只需要<code><p class="card-list"></code>标记中的<code><span></code>类</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我通过创建一个列表并附加每个<code>span</code>的两个<code>class</code>,然后用<code>' '.join(listname)</code>连接它们来解决这个问题 后来,我把那个列表添加到另一个列表中</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
尝试加密和解密文本文件(Python)
7 回答
尝试加密文本文件会导致类型错误
7 回答
尝试加密时溢出错误
2 回答
尝试加载.plist文件时出现“无此类文件或目录”错误
4 回答
尝试加载“blog.templatetags.blog_标记”时引发ImportError:没有名为“markdown”的模块
5 回答
尝试加载“menus.templatetags.menus\u标记”时引发ImportError:无法从“menus.models”导入名称“menus”
5 回答
尝试加载5GB文本fi时发生Python内存错误
9 回答
尝试加载5GB文本文件时出现MemoryError
10 回答
尝试加载Django模板时出现渲染错误
4 回答
尝试加载exi时出错
4 回答
尝试加载imag时使用精灵表失败
10 回答
尝试加载json.Python时出错
3 回答
尝试加载json文件时遇到此错误:json.decoder.jsondeCoderror:预期值:第1行第1列(char 0)
2 回答
尝试加载keras和tensorflow,我仍然得到ModuleNotFoundError:在我的Anaconda环境中没有名为'tensorflow_core.estimator'的模块
4 回答
尝试加载Librosa的示例fi时出现“找不到文件”错误
7 回答
尝试加载matplotlib时发生iPython笔记本错误
7 回答
尝试加载MP3时出现PyGame错误
6 回答
尝试加载pickled matplotlib figu时发生AttributeError
1 回答
尝试加载pickle文件时出错
1 回答
尝试加载Pytoch模型时遇到问题:“在模块中找不到标识”
1 回答