




本文详解如何在 python 中将数据库返回的 `yyyy-mm-dd hh:mm:ss` 字符串(如 `'2025-01-26 00:39:24'`)安全解析并转换为符合 xml sitemap `
在构建 Python 网站地图(sitemap)生成器时,
推荐使用 dateutil.parser.parse() 进行鲁棒性解析(可自动识别多种常见格式),再通过 .astimezone() 绑定本地系统时区(或显式指定时区),最后用 .replace(microsecond=0) 去除微秒以避免 ISO 格式中出现 .xxx,最终调用 .isoformat() 输出标准字符串:
from dateutil import parser import datetime # 假设这是从 MySQL 查询得到的时间字符串 db_timestamp = '2025-01-26 00:39:24' # 步骤 1:解析为 naive datetime(无时区) dt_naive = parser.parse(db_timestamp) # 步骤 2:赋予本地系统时区(自动处理夏令时等) dt_local = dt_naive.astimezone() # 步骤 3:移除微秒(sitemap 不接受毫秒/微秒) dt_clean = dt_local.replace(microsecond=0) # 步骤 4:生成 ISO 8601 字符串(含时区偏移) iso_lastmod = dt_clean.isoformat() print(iso_lastmod) # 示例输出:2025-01-26T00:39:24+03:30
✅ 注意事项:
该方法简洁、健壮、符合 sitemap 协议规范,可直接集成至你的生成逻辑中,确保