python 通过win32com操作vcf到outlook中,同时解决乱码问题
之前用的黑莓手机,故障后换了iphone,后来还是想用上黑莓Q10。于是有了该文章。
问题:
如何将iphone上的通讯录导入黑莓?
网上回答1:通过icloud将iphone中的通讯录导入黑莓手机。
结果:在黑莓Q10上登录icloud的服务器contacts.icloud.com时,报错。。。无果。
网上回答2:通过qq或者微信同步助手。
结果:在iphone上没装这些软件,而且要做Q10上安装响应的软件才能同步。。。无果。
网上回答3:将iphone上的通讯录存到sim卡中。
结果:sim卡容量不够,手机上的通讯录有498条,不能转到sim卡上。。。无果。
解决办法:将iphone上的通讯录导出到vcard中,再通过outlook存入黑莓Q10
step1:打开itools.exe,将通讯录导出VCARD
然而。打开看到是乱码,如下:
在网上查到可以用win32com操作outlook。。。于是,用python,并且通过转码,导入outlook。代码如下:
#conding:utf-8
# 使用python操作outlook中的通讯录
# 如果在循环列表外面,生成一张通讯录,那么在存入的时候,会不断覆盖。
# 所以需要在每一个循环列表中生成一张通讯卡
import os
import win32com.client
outlook = win32com.client.Dispatch("Outlook.Application")
#newContact = outlook.CreateItem(2) #只生成一张通讯卡
contactList = os.listdir("contacts")
for contact in contactList:
print(contact)
with open(os.path.join("contacts",contact),encoding="utf-8") as f:
vcard = f.readlines()
LastName = vcard[4].split(":")[1]
MobileTelephoneNumber = vcard[5].split(":")[1]
newContact = outlook.CreateItem(2) #每次创建一张通讯卡
newContact.FirstName = LastName
newContact.MobileTelephoneNumber = MobileTelephoneNumber
newContact.save()
print("done")
这样,在outlook中,全部显示正常了。也不乱码了。
再通过黑莓 blackberrylink ,将通讯录进行同步,就OK了!
python 通过win32com操作vcf到outlook中,同时解决乱码问题的更多相关文章
- Python后端日常操作之在Django中「强行」使用MVVM设计模式
扫盲 首先带大家了解一下什么是MVVM模式: 什么是MVVM?MVVM是Model-View-ViewModel的缩写. MVVM是MVC的增强版,实质上和MVC没有本质区别,只是代码的位置变动而已 ...
- 在Outlook中查看预览SharePoint文档库的文档
本文概况 阅读时间: 约2分钟 适用版本:SharePoint Server 2010及以上 面向用户:普通用户,管理员 难度指数:★★☆☆☆ 在日常工作中,总有一些常用的文档需要经常打开查看,其实我 ...
- Python使用boto3操作AWS S3中踩过的坑
最近在AWS上开发部署应用. 看了这篇关于AWS中国区填坑的文章,结合自己使用AWS的经历,补充两个我自己填的坑. http://www.jianshu.com/p/0d0fd39a40c9?utm_ ...
- win32com操作word(1):几个重要的对象(28.35)
Pywin32模块为python封装了操作windows底层API函数的功能.而win32com是Pywin32下面的一个模块,专门负责操作com组件. 由于office工具(Word.Excel等) ...
- win32com操作word API精讲&项目实战 预告
对win32com的使用和研究有好一段时间了,想起本人刚开始做word编程项目时的各种痛苦:网上能找到的都是简单的示例,如同hello word一般,嚼之无味又无可奈何.读office的word接口文 ...
- win32com操作word 第三集:Range精讲(一)
本课程<win32com操作word API精讲&项目实战>,本公众号以文字分享为主,B站与视频号则发布视频分享,ID均为:一灯编程 本集开始,将会深入Document接口.打开或 ...
- python高级之操作数据库
python高级之操作数据库 本节内容 pymysql介绍及安装 使用pymysql执行sql 获取新建数据自增ID fetch数据类型设置 1.pymysql介绍及安装 在python2中连接数据库 ...
- Python 文件常见操作
# -*-coding:utf8 -*- ''''' Python常见文件操作示例 os.path 模块中的路径名访问函数 分隔 basename() 去掉目录路径, 返回文件名 dirname() ...
- Python :open文件操作,配合read()使用!
python:open/文件操作 open/文件操作f=open('/tmp/hello','w') #open(路径+文件名,读写模式) 如何打开文件 handle=open(file_name,a ...
- 【转载】教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神
原文:教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神 本博文将带领你从入门到精通爬虫框架Scrapy,最终具备爬取任何网页的数据的能力.本文以校花网为例进行爬取,校花网:http:/ ...
随机推荐
- qt获取子控件坐标
QPoint pos = ui->m_blt->mapToGlobal(QPoint(0, 0)); 就可以了.
- C#汉字转拼音(Microsoft.PinYinConverter)
1. NuGet程序包 Microsoft.PinYinConverter 2. 使用方法 var chineseChar = new ChineseChar('中'); var pyStr = ch ...
- 树莓派UBUNTU MATE 自动登录用户
1.sudo vim /usr/share/lightdm/lightdm.conf.d/60-lightdm-gtk-greeter.conf 2.添加autologin-user=youruser ...
- Requset02
其他功能: 1. 获取请求参数通用方式:不论get还是post请求方式都可以使用下列方法来获取请求参数 1. String getParameter(String name):根据参数名称获取参数值 ...
- 一份随笔让你了解这个基于Raspberry Pi / 树莓派而设计的工业计算机
CM4 Sensing是一款基于Raspberry Pi / 树莓派 计算模块4(简称CM4),由 EDATEC 为物联网和数据采集应用而设计的工业计算机.它充分利用了CM4的结构灵活性,解决了CPU ...
- T-SQL——数字辅助表
目录 0.永久性的连续数字表 1.使用系统表:master..spt_values 2.使用递归CTE 3.使用0-9乘以量级交叉连接 4.使用2的次幂和CTE生成和交叉链接 创建表值函数 5.数字辅 ...
- python压缩解压文件
转载CSDN坏菠萝:https://blog.csdn.net/abcwanglinyong/article/details/80840813
- PHP封装自定义函数function
最近一直在看PHP教程,毕竟懂点PHP语言还是不错的选择,起初是准备制作一个三文件夹内关键词组合长尾关键词,然后用PHP做一个全站的动态聚合页面的一个PHP插件,不负有心人啊!已写好,稍晚整理会在资源 ...
- ASP动态网页(网站)设计教程
ASP动态网页(网站)设计教程 文件名 大小 ASP获取时间函数大全 35KB 项目6 ASP数据表数据操作功能设计.pptx 3.34 MB 项目5 WEB数据库与数据库管理.pptx 3.34 M ...
- RT-Thread Studio使用——创建工程并配置外部时钟(转)
硬件:正点原子阿波罗F429开发板,主控STM32F429IGT6,晶振25MHz. 软件:RT-Thread Studio RT-Thread版本:4.1.0 1.创建工程 根据所使用的硬件信息,配 ...