Tantalus13A98B5F / lesson2cal

Convert course schedule into a .ics file for SJTU ElectSys (i.sjtu.edu.cn)
10 stars 0 forks source link

Lesson2Cal: SJTU ElectSys课程表日历生成器

解析教学信息服务网页面,生成.ics文件(可导入Outlook、Google Calendar等多种日历服务)

目前使用网页作为前端(Vue.js & Element UI);欢迎贡献其他前端!

使用中遇到问题,或有意见或建议,可在Issue中提出。

Install

对于Windows用户,可以直接在Release页面 下载程序包,解压后双击lesson2cal.exe即可启动。注意,Release版本可能不会包括最新的功能。

如手动安装,请确保已安装Python 3.4或以上版本,且pip可用。下载本项目文件后执行以下语句安装依赖:

pip install -r requirements.txt

Usage

运行./server.py,浏览器将自动打开页面,默认地址为http://localhost:5000/。 输入相关信息后,如果顺利,页面将生成一output.ics文件。 该文件为文本文件,在导入之前,如有需要可进行编辑。 一个事件的形式如下:

BEGIN:VEVENT
SUMMARY:事件名称
DTSTART:20180910T080000
DTEND:20180910T094000
RRULE:FREQ=WEEKLY;INTERVAL=1;COUNT=16
END:VEVENT

SUMMARY为事件的标题,DTSTARTDTEND分别为首次事件开始、结束的日期与时间; 另有LOCATIONDESCRIPTION字段可选添加; RRULE控制事件的重复,可借助RRULE Tool生成。

Options

目前提供两个一个可配置项。

关于地点显示:

关于备注的处理:已经废弃,用户界面接口尚未删除

发行

采用cx_Freeze进行打包。这个包不在requirements.txt中,如有需求请安装cx-freeze

Known Issues

Disclaimer

存在解析错误的可能性,具体课表请以ElectSys为准。任何错误引起的不良后果,开发者恕不承担。