2024适配政务合规的政府档案解决方案,解决基层档案管理3大痛点
你是不是经常在基层政务窗口听到“查不到这份档案”的吐槽?堆得满满当当的纸质档案,受潮、虫蛀、丢失的风险说有就有,想弄电子档案又怕不合规?不少街道、乡镇的政务岗都卡在这事儿上——既要符合档案法的要求,又...
2026年06月27日 07:00:22
本实操采用Python3.10+内置SQLite数据库,无需复杂服务器,全程命令行操作,无额外依赖工具。
选择任意磁盘(如Windows桌面)创建名为「archive_system」的文件夹,进入该文件夹后打开命令行:
``` mkdir archive_work && cd archive_work ```(解释:archive_work为归档系统工作目录,所有档案数据、代码均存储在此)
编写极简可运行的档案系统代码,包含「档案录入、分类、归档」三个核心功能,所有代码可直接复制使用。
在archive_work目录下新建名为「archive_system.py」的文件,用记事本/VS Code打开,粘贴以下完整代码:
``` import sqlite3 import os from datetime import datetime 初始化数据库,创建档案表 def init_db(): conn = sqlite3.connect('archive.db') cursor = conn.cursor() 表结构:ID自动递增,档案名、分类、创建时间、文件路径、归档状态(0=未归档,1=已归档) cursor.execute('''CREATE TABLE IF NOT EXISTS archives (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, category TEXT NOT NULL, create_time TEXT NOT NULL, file_path TEXT NOT NULL, is_archived INTEGER DEFAULT 0)''') conn.commit() conn.close() 录入档案到系统 def add_archive(name, category, file_path): if not os.path.exists(file_path): print("错误:文件不存在,请检查路径") return conn = sqlite3.connect('archive.db') cursor = conn.cursor() create_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S") cursor.execute('INSERT INTO archives (name, category, create_time, file_path) VALUES (?, ?, ?, ?)', (name, category, create_time, file_path)) conn.commit() conn.close() print("档案录入成功") 执行档案归档,标记为已归档 def do_archive(archive_id): conn = sqlite3.connect('archive.db') cursor = conn.cursor() cursor.execute('UPDATE archives SET is_archived = 1 WHERE id = ?', (archive_id,)) conn.commit() conn.close() print(f"档案ID {archive_id} 归档成功") 查询未归档档案列表 def query_unarchived(): conn = sqlite3.connect('archive.db') cursor = conn.cursor() cursor.execute('SELECT id, name, category, create_time FROM archives WHERE is_archived = 0') results = cursor.fetchall() conn.close() print("未归档档案列表:") for row in results: print(f"ID:{row[0]},名称:{row[1]},分类:{row[2]},创建时间:{row[3]}") 主菜单交互逻辑 if __name__ == "__main__": init_db() while True: print("\n===== 综合档案管理系统 =====") print("1. 录入档案") print("2. 查看未归档档案") print("3. 执行档案归档") print("4. 退出系统") choice = input("请输入操作选项:") if choice == '1': name = input("请输入档案名称:") category = input("请输入档案分类(如:人事/财务/项目):") file_path = input("请输入文件完整路径(如C:/test.pdf):") add_archive(name, category, file_path) elif choice == '2': query_unarchived() elif choice == '3': query_unarchived() archive_id = input("请输入要归档的档案ID:") do_archive(archive_id) elif choice == '4': break else: print("选项错误,请重新输入") ```命令行执行:python archive_system.py,弹出系统菜单即为成功,后续所有操作均在该菜单内完成。
严格按步骤操作,无需额外工具,所有细节已规避卡壳问题。

将需要归档的文件放在固定路径,注意两个规则:
在系统菜单选择「1. 录入档案」,按提示输入:
输入完成后提示「档案录入成功」,重复该步骤录入所有待归档文件。
在系统菜单选择「2. 查看未归档档案」,输出所有已录入但未归档的档案,核对ID、名称、分类是否正确,确认无误后进入下一步。
选择「3. 执行档案归档」,系统再次输出未归档档案列表,输入要归档的档案ID(如输入1),回车后提示「档案ID X 归档成功」即完成单份归档;若需批量归档,重复此步骤输入多个ID即可。
再次选择「2. 查看未归档档案」,若之前操作的ID未出现在列表中,说明归档成功;也可打开archive.db文件,查询archives表中is_archived=1的记录,确认归档状态。
若需适配企业业务需求,可对代码做以下修改,全程无需额外工具: