Outlook CSV联系人格式全表头及多字段命名规则技术咨询
Outlook CSV联系人表头与多字段命名规则
一、表头范围与核心字段
微软没有对外发布完整的所有可能表头列表,但官方明确了Outlook CSV导出的核心字段,加上导出时自动包含的扩展/兼容字段(包括你提到的ISDN、Telex这类老旧字段,是为了兼容早期通讯格式)。常见核心表头分类如下:
- 基础身份信息:
Name、Given Name、Middle Name、Surname、Nickname、Title、Company、Department、Job Title - 联系电话:
Home Phone、Mobile Phone、Work Phone、Fax、Pager、ISDN、Telex、TTY - 邮件地址:
E-mail Address、E-mail 2 Address、E-mail 3 Address - 物理地址:
Home Street、Home City、Home State、Home Postal Code、Home Country、Work Street、Work City、Work State、Work Postal Code、Work Country - 网址与社交:
Web Page、Web Page 2、Instant Messenger Address - 备注与其他:
Notes、Birthday、Anniversary
二、多字段命名规则
Outlook CSV对同类型多字段采用**「基础字段名 + 序号」**的命名逻辑,具体规则:
- 电话/邮件/网址类:同一类型存在多个条目时,在基础字段名后加数字序号(从2开始),比如第二个工作电话为
Work Phone 2,第三个邮箱为E-mail 3 Address,第二个网址为Web Page 2。 - 地址类:地址按「类型+子字段」拆分,每个地址类型对应一组子字段(如
Home/Work/Other分别对应各自的Street/City/State等);若有多个同类型地址,会在类型后加序号,比如Home 2 Street、Home 2 City。 - 兼容字段:ISDN、Telex这类老旧字段本身为单一字段,不会有多序号扩展——这类通讯方式极少存在多条记录的场景。
三、Python开发适配建议
由于表头存在兼容性差异(比如Google导出的Outlook CSV会额外携带一些字段),开发时可按以下方式处理:
- 用Python内置
csv.DictReader读取文件,自动获取所有表头,无需硬编码所有可能字段。 - 建立字段映射字典,将各类可能的表头(包括老旧字段)映射到插件内部字段,示例:
field_mapping = { "Home Phone": "home_phone", "Home Phone 2": "home_phone_2", "ISDN": "other_phone", "Telex": "other_phone", "Home Street": "home_street", "Web Page": "website", # 按需补充更多映射关系 }
- 遍历读取到的每一行数据,根据映射字典将CSV字段转换为插件所需格式,忽略未在映射中的字段即可。
内容的提问来源于stack exchange,提问作者Max
相关产品推荐
相关产品推荐

