用于事件管理的icloud api

apple-calendar-integration的Python项目详细描述


关于

用于事件管理的iCloud API

工具

  • Python3

如何使用pip安装

运行此命令:

pip install apple-calendar-integration

如何创建事件

fromdatetimeimportdatetime,timedeltafromapple_calendar_integrationimportICloudCalendarAPIapi=ICloudCalendarAPI(username,password)start_date=int(datetime.now().timestamp())end_date=start_date+timedelta(hours=2)etag,ctag,guid=api.create_event('Your title',start_date,end_date)

从现在起,这个python脚本将创建一个两小时的事件。etagctagguid将用于编辑或删除事件。

如何删除事件

fromapple_calendar_integrationimportICloudCalendarAPIapi=ICloudCalendarAPI(username,password)api.delete_event(new_etag,ctag,guid)

如果一切正常,应该返回True

如何使用repeat编辑事件

如何在某些频率下添加重复次数

{"count":5,"freq":"daily"}

这意味着每天重复5次(天)。

freq有这样的选项:

  • 每日
  • 每周
  • 每月
  • 每年

如何以一定的频率添加repeat until date

另外,您可以使用end date参数指定,而不是num of times。

{"until":1536910206,"freq":"monthly"}

所有代码放在一起

fromapple_calendar_integrationimportICloudCalendarAPIapi=ICloudCalendarAPI(username,password)repeat={"until":1536910206,"freq":"monthly"}new_etag=api.edit_event(etag,ctag,guid,repeat=repeat)

应该返回新的etag如果一切都是OK

如何使用报警编辑事件

如果要在事件发生时创建报警

{"before":false}

如果在事件发生之前

{"before":false,"hours":3,"minutes":2,"seconds":1}

这将在事件开始日期前3小时2分1秒发送有关事件的通知

有这样的选项:

  • 小时
  • 分钟

所有代码放在一起

fromapple_calendar_integrationimportICloudCalendarAPIapi=ICloudCalendarAPI(username,password)alarm={"before":False,"hours":3,"minutes":2,"seconds":1}new_etag=api.edit_event(etag,ctag,guid,alarm=alarm)

应该返回新的etag如果一切都是OK

如何使用邀请编辑活动

如何将新人员添加到活动中

fromapple_calendar_integrationimportICloudCalendarAPIapi=ICloudCalendarAPI(username,password)invites=["email_1@gmail.com","email_2@gmail.com"]new_etag=api.edit_event(etag,ctag,guid,add_invites=invites)

如何从邀请中删除某人

fromapple_calendar_integrationimportICloudCalendarAPIapi=ICloudCalendarAPI(username,password)invites=["email_1@gmail.com"]new_etag=api.edit_event(new_etag,ctag,guid,remove_invites=invites)

应该返回新的etag如果一切都是OK

如何编辑noteurltitleevent date

fromapple_calendar_integrationimportICloudCalendarAPIimporttimeapi=ICloudCalendarAPI(username,password)new_etag=api.edit_event(etag,ctag,guid,note='New notw',url='https://my_url.com',title='New title',start_date_timestamp=int(time.time()),end_date_timestamp=int(time.time())+1000)

应该返回新的etag如果一切都是OK

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
构造函数的java条件调用   类Dog中的java构造函数Dog不能应用于给定类型   java jsch和运行“sudo su”   java将队列和堆栈相互复制   java如何在netbeans项目的文件夹中添加库   java While循环在我的代码中不存在   如何在XML中使用java方法的返回值   java是否可以在不写入文件的情况下将字符串/字节数组作为文件发布?   java为什么这些字符串不相等?   sockets客户机-服务器java编程,用户可选择   java如何在SpringMVC和hibernate中保存模型返回视图的列表   java如何修复组织。openqa。硒。WebDriverException:未知错误   Java,Ant错误:编码Cp1252的不可映射字符   JAVAlang.ClassCastException:[Ljava.lang.String;与java.lang.String不兼容   java如何使用JDK8(可选)为空字段创建自定义IntelliJ getter模板   java Tomcat6响应。sendRedirect()404错误