Как я могу получить это для l oop, чтобы пропустить собрания, где нет посетителей и нет внешних посетителей, основанных на domain.com? - PullRequest
0 голосов
/ 24 апреля 2020

Я хочу напечатать название события календаря и внешний адрес электронной почты на основе указанных ниже критериев. В настоящее время работает для l oop, и я получаю желаемые результаты, пока не доберусь до собрания, на котором не было посетителей.

for calendar_id in me:
        count = 0
        eventsResult = service.events().list(
            calendarId=calendar_id,
            timeMax=now,
            timeMin=end_date).execute()

        events = service.events().list(calendarId=calendar_id).execute()
        events = events.get('items', [])


        for event in events:
            start = event['start'].get('dateTime')

            for attendees in event['attendees']:
                atte = attendees.get('email')
                try:
                    attid = event.get(attendees)
                    if "domain.com" not in atte:
                        print('\n' + event['summary'] + " " + "(Calendar - " + calendar_id + ")")
                        print(attendees['email'])
                    else:
                        continue
                except:
                    pass

1 Ответ

1 голос
/ 24 апреля 2020

Вы можете использовать метод get из dict, чтобы проверить, присутствуют ли участники в событии с пустым списком по умолчанию

for attendees in event.get('attendees', []):

или вы можете проверить

if 'attendees' in event.keys():
    for attendees in event['attendees']:

В случае Если участников нет, то для l oop событий будет продолжено следующее событие.

...