python实现将android手机通讯录vcf文件转化为csv

2020年08月05日 04:21:31   [来源:互联网]   [阅读:-]
字体:【
python实现将android手机通讯录vcf文件转化为csv

经常会遇到将手机通讯录导出到电脑并转化为在电脑中可编辑的情况,在网上搜索了很久当前不外乎两种处理方式。1.使用电脑的outlook的通讯簿功能,将手机导出的vcf文件导入到outlook的通讯录中,然后再导出为可编辑文件;2.是使用专用软件直接打开vcf文件。很不幸两种都不适合我,第一种导出到outlook后人名部分全是乱码,第二种方式下载软件后就没打开成功(有可能下载的软件与我的电脑不兼容)。

在网上也找了一些python的代码自己转化,一直没有找到合适的代码,我的vcf文件中的名称部分是QP编码格式。下面将我自己处理过程简单描述一下。

手机:华为MATE系列

python环境:python3.6.2

1.首先检查导出的vcf文件用文本编辑打开,会发现是如下的一些格式,从“ENCODING=QUOTED-PRINTABLE”可以看出名称部分是QP编码,对该部分进行编码才是关键

BEGIN:VCARD

VERSION:2.1

N;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:;=E5=86=AF=E8=94=B5=E5=B6=A5;;;

FN;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:=E5=B7=A5=20=E8=94=B6=20=E5=86=AF

TEL;CELL:1-351-886-xxxx

END:VCARD

2.导入import quopri,对QP部分进行解码,截取Q P编 码内容在此不赘述

对中文名称部分进行解码: quopri.decodestring(line[43:-3]).decode('utf-8')

对英文名称部分进行解码:quopri.decodestring(line[43:]).decode('utf-8')

3.另外还有一点vcf导出的电话有些是有空格,有些是有“-‘,所以最好用以下语句规范化一下

(line[9:]).replace("-","").replace(" ","") + ",";

OK,到此基本上已经大功告成,我是写个循环,将cvf文件所有名片都循环处理一遍然后导入到一个csv文件中。

以后可以定期将手机通讯录导到电脑了。

推荐阅读:华硕vivobook


相关新闻
新闻焦点
对于日系车而言,也许不少车友第一时间想到的丰田汽车。其作为汽车品质的代表,它旗下不少车型均被国人赋予难开坏的美誉,尤其是SUV细分市场中的普拉多[更多]
朗逸外形比起卡罗拉思域,不说好看,但很多人可能会觉得更稳重,方正,适应性也更广。能接受他外观的人群自然也就更多,销量自然而然就变多了。上汽大众朗[更多]
凯美瑞,被誉为日系车三雄,全球累计销量高达2000万台。这一次丰田为它改头换面,推出了2019款凯瑞美,下面我们聊一聊它吧。前脸:前脸整体看给人[更多]
前言:C-IASI中保研碰撞试验预告:一汽奥迪自愿申请测试旗下一汽奥迪A6 L车型。试验车型为2019款 一汽奥迪A6L 40TFSI 豪华动感[更多]
关于我们 | 联系我们 | XML地图 | 网站地图TXT | 版权声明
版权所有:青海汽车网未经授权禁止复制或建立镜像
相关作品的原创性、文中陈述文字以及内容数据庞杂本站无法一一核实,如果您发现本网站上有侵犯您的合法权益的内容,请联系我们,本网站将立即予以删除!
中国互联网违法和不良信息举报中心 网络警察报警岗亭