将课程表导入日历,实现电脑手机日程同步 | 您所在的位置:网站首页 › 电脑日历日程怎么导出 › 将课程表导入日历,实现电脑手机日程同步 |
写在前面:我运行时环境为python3.x环境,需自行配置,如果一定要在2.x环境运行的话,代码里有修改注释,源代码是在网络上找的((又到了每年此刻,教你把课程表导入日历 - 少数派 (sspai.com)))下载后修改了一些问题(包括修改为3.x运行环境) 原作者代码几乎完全没有注释,遇到问题时去啃代码也是蛮痛苦的。 另外此脚本不一定只能用于课程表,如果有长期的需要以周为单位进行的事务的话,也可以使用此脚本快捷的转换为ICS文件导入日历,只需稍微修改配置信息即可 同步到日历后也有一些好处,比如装x,如查看课程表时不再需要连接网络,并且上课前日历会自动提醒(可设置提前多久),电脑查看也很方便,如下图 Gitee代码链接: 课程表导入日历 开始实现思路:将课程信息输入Excel表格,使用Python解析表格文件并输出ICS文件,将课程转换为日历中的日程信息,使用日历打开ICS文件完成导入 主要代码文件如下: 编辑conf_classTime.json文件中的数据,其中数据代表着第几节课,课程开始时间,结束时间 这个我已经按照我自己实际情况编辑好了,使用的是学校的作息时间,其他学校根据实际去改 编辑classInfo.xlsx文件,其中截图的各列数据意义如下 ![]() 运行excelReader.py文件,注意运行过程中需要输入0继续,完成后会生成一个conf_classInfo.json文件 注意在运行之前最好先把文件夹中的conf_classInfo.json文件删除 运行此文件需要安装xlrd软件包,且必须安装1.2.0版本的包,最新版本不支持读取此表格文件 运行时会出现下列内容,做为检查数据列和上一步配置的excel文件表头是否一一对应,一般输入数字零,然后回车即可完成运行 运行完成后生成文件图片如图: 运行main.py文件,中间需要输入本学期开学第一天的时间(格式为20020101)和选择日历提前多久提示上课,完成后会生成一个class.ics文件 同样在运行前最好先把原有的class.ics文件删除 正常运行时的情况,蓝色文字为输入的内容: 生成的文件: 电脑直接双击打开class.ics文件即可,win10系统会自动导入,其他的大同小异,手机也可以直接打开文件,选择使用手机日历打开,即可保存到手机日历中。 注意win10系统打开后可能会出现所有时间都提前一个小时的情况,这个是win10日历固有的问题,截止书写这句话的时候win10日历尚未解决该问题 解决方案:下载Outlook邮箱的手机app,将class.ics文件发送到手机,打开时选择使用outlook打开即可
ps: outlook导入日历时最好导入到新建的空白日历中,默认的日历不可删除,且outlook邮箱不支持批量删除日历数据,数据如果出错的话会很麻烦。 |
CopyRight 2018-2019 实验室设备网 版权所有 |