2016-10-21 5 views
0

CalDAV python 모듈을 사용하여 이벤트의 전체 정보를 가져오고 싶습니다. 이벤트에 대한 링크를 얻을 수 있었지만 그 이벤트에서 이벤트 세부 정보를 얻는 방법을 이해하지 못해 링크가 있습니다. 행사 :이벤트 링크에서 이벤트 정보를 얻는 방법은 무엇입니까?

https://mail.example.com:443/public-calendars/example.com/9A0F7585-A952-4E0C-868C-0C072A2D8740/9a0f7585-a952-4e0c-868c-0c072a2d8740-0000048a.eml 

내가 이벤트 세부 정보 얻을이를 시도하고있다 :

event = 'https://mail.example.com:443/public-calendars/example.com/9A0F7585-A952-4E0C-868C-0C072A2D8740/9a0f7585-a952-4e0c-868c-0c072a2d8740-0000048a.eml' 
eventDetail = caldav.Event(event).load() 

을하지만 오류가 점점 오전 :

AttributeError: 'str' object has no attribute 'request' 

를 내가 내가 그 정보를 통해 가서 내가 필요한 것을 검색하거나 파일을 보낼 수 있도록, 변수에 그것을 넣어 싶습니다

BEGIN:VEVENT 
SUMMARY:event-title 
DTSTART;TZID=Europe/Warsaw:20150305T130000 
DTEND;TZID=Europe/Warsaw:20150305T140000 
DTSTAMP:20150624T170317Z 
UID:9149F870-5475-4120-9EE5-1A06E857807B 
SEQUENCE:1 
EXDATE;TZID=Europe/Warsaw:20150618T130000 
EXDATE;TZID=Europe/Warsaw:20150305T130000 
EXDATE;TZID=Europe/Warsaw:20150430T130000 
CREATED:20150226T105018Z 
DESCRIPTION: 
LAST-MODIFIED:20150616T094907Z 
LOCATION: 
RRULE:FREQ=WEEKLY;UNTIL=20150624T235959Z;INTERVAL=1 
STATUS:CONFIRMED 
TRANSP:OPAQUE 
BEGIN:VALARM 
ACTION:NONE 
TRIGGER;VALUE=DATE-TIME:19760401T005545Z 
UID:FC67F59E-5540-47BE-ACFA-FE229771EC11 
X-WR-ALARMUID:FC67F59E-5540-47BE-ACFA-FE229771EC11 
END:VALARM 
END:VEVENT 

: 좀하고 싶습니다 것은이 같은 것입니다.

답변

0

caldav/objects.py 내가 볼 모듈에서 상대 : 당신은 따라서, 클라이언트 오브젝트 (첫번째 파라미터)과 URL에 오류를 전달하는

def __init__(self, client=None, url=None, data=None, parent=None, id=None) 

.

어쩌면이 작동,하지만 아마 (로드, 꽤 가능성 클라이언트 객체가 필요) :

:

eventDetail = caldav.Event(url=event).load() 

그러나 모듈을 아래로 더보고 나는 달력 개체에 event_by_url 참조

class Calendar(DAVObject): 
    ... 
    def event_by_url(self, href, data=None): 
은 아마도 당신은 이미 일정 개체에 액세스 할 수, 그래서 그것을 간단한 수 있습니다 가정 :

event = calendar.event_by_url("/calendars/123.ics") 
+0

이것은 기본적으로 특정 이벤트를 인쇄 할 것임을 알게되었습니다 : – dsturlan

+0

print event.data 다음과 같이 이벤트에 다른 객체를 사용할 수 있습니다. 예 : name : print event.name – dsturlan