Python如何使用BeautifulSoup库提取嵌套在div和span标签中的HTML表格数据?

DDD
发布: 2025-02-22 15:42:01
原创
638人浏览过

Python如何使用BeautifulSoup库提取嵌套在div和span标签中的HTML表格数据?

python高效解析嵌套在div和span标签中的html表格数据

本文介绍如何利用Python的bs4库(Beautiful Soup 4)高效提取嵌套在div和span标签内的HTML表格数据。bs4库以其强大的HTML/XML解析能力而闻名,能轻松处理复杂的网页结构。

以下代码演示了如何使用bs4遍历HTML树,提取目标数据:

<code class="python">from bs4 import BeautifulSoup
import re

html_doc = '''
<div class="all hs_list" id="articlelistnew">
    <div class="dheader">
        阅读评论标题 作者 最后更新
    </div>
    <div class="articleh normal_post">
        471 2 ... ... 09-12 00:09
    </div>
    <div class="articleh normal_post">
        603 3 ... ... 09-11 16:01
    </div>
</div>
'''

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

# 查找包含表格数据的div
table_div = soup.find('div', {'id': 'articlelistnew'})

# 提取表格行
rows = table_div.find_all('div', {'class': 'articleh'})

# 遍历每一行,提取数据
for row in rows:
    #  由于示例中没有span标签,直接按空格分割文本
    cells = row.text.split()
    print(cells)
</code>
登录后复制

这段代码首先创建BeautifulSoup对象解析HTML。然后,它定位包含表格数据的div元素,再提取每一行数据。由于提供的示例HTML中div内的数据并非用span标签分隔,代码直接使用split()方法按空格分割文本,得到每一行单元格数据。 如果实际HTML中单元格用span标签包裹,则需要修改代码,使用row.find_all('span')提取span标签,再处理每个span标签的文本内容。 例如:

慧中标AI标书
慧中标AI标书

慧中标AI标书是一款AI智能辅助写标书工具。

慧中标AI标书 120
查看详情 慧中标AI标书
<code class="python">for row in rows:
    cells = row.find_all('span')
    cell_data = [cell.text.strip() for cell in cells] #strip()去除多余空格
    print(cell_data)</code>
登录后复制

通过调整代码中find_all()方法的参数,以及对提取数据的后处理,可以灵活地适应各种HTML表格结构。 记住根据实际HTML结构调整代码,以确保准确提取数据。

立即学习Python免费学习笔记(深入)”;

以上就是Python如何使用BeautifulSoup库提取嵌套在div和span标签中的HTML表格数据?的详细内容,更多请关注php中文网其它相关文章!

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

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