Python读写SQLite数据库并导出Excel统计数据的实现

Luna
Luna
发布时间:2026-10-12| 2人浏览过
原创

本文介绍如何使用Python连接SQLite数据库,动态创建数据表,并通过遍历目录处理日志文件。通过示例代码展示如何初始化表结构、执行数据插入,最终将统计结果导出为Excel文件,适用于日志分析与数据报表生成场景。

Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例

Python 提供了强大的标准库支持,可以轻松实现 SQLite 数据库的读写操作,并能将处理后的统计数据写入 Excel 文件。以下是一个具体的实现示例,展示了如何连接数据库、初始化表结构以及处理日志文件。

核心代码实现

首先,我们需要定义源目录和目标文件路径。源目录包含待处理的日志文件,目标数据库和 Excel 文件将分别存储处理结果和分析数据。

src = 'F:\\log\\mha-041log\\rnd-log-dl.huawei.com\\test'
#  dst = sys.argv[2]
dst = 'F:\\log\\mha-041log\\rnd-log-dl.huawei.com\\test\\mha-041log.db'
#  dst_anylyzed = sys.argv[3]
dst_anylyzed = 'F:\\log\\mha-041log\\rnd-log-dl.huawei.com\\test\\mha-041log.xlsx'
cx = sqlite3.connect(dst)
init_table_title(cx, startcoreapp_table)
init_table_title(cx, startwechat_table)
init_table_title(cx, coreappjankframe_table)
init_table_title(cx, wechatjankframe_table)
init_table_title(cx, otherapp_table)
os.path.walk(src, visit_zipfile, cx)

在上述代码中,我们首先连接 SQLite 数据库,然后调用 init_table_title 函数为不同的日志类型(如 startcoreapp_table、startwechat_table 等)初始化表结构。最后,使用 os.path.walk 遍历源目录,处理日志文件并将结果写入数据库。

表结构初始化

为了确保数据能够正确存储,我们需要定义每个表的字段。以下代码展示了如何动态创建表结构:

def init_table_title(c, work_table):
  global base_index
  global info_index
  c.execute('DROP TABLE IF EXISTS ' + work_table);
  c.execute('CREATE TABLE ' + work_table + ' \
           (Product TEXT NOT NULL, \
           Version TEXT NOT NULL, \
           Imei TEXT NOT NULL, \
           Date TEXT NOT NULL, \
           Eventid TEXT NOT NULL, \
           HappenTime TEXT NOT NULL, \
           FIELDNAME TEXT NOT NULL, \
           CASENAME TEXT NOT NULL)');
  return

该函数首先删除已存在的表(如果存在),然后创建一个新的表,包含 Product、Version、Imei 等字段。这些字段用于存储日志中的关键信息,如产品名称、版本号、设备 IMEI 号、日期、事件 ID、发生时间、字段名和用例名称。

注意事项

  • 路径处理:确保源目录和目标文件路径正确,避免因路径错误导致文件读写失败。
  • 表结构:根据实际需求调整表字段,确保存储的数据符合业务逻辑。
  • 异常处理:在实际应用中,建议添加异常处理机制,以应对数据库连接失败、文件读取错误等异常情况。

通过以上步骤,我们可以实现 Python 对 SQLite 数据库的读写操作,并将统计数据导出为 Excel 文件。这种方法适用于日志分析、数据统计等场景,能够高效地处理大量数据并生成报表。

以上就是Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例的详细内容,更多关于Python SQLite Excel的资料请关注本站其它相关文章!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。