Код: Выделить всё
# Create GraphServiceClient
graph_client = GraphServiceClient(credential, scopes)
# Define date range for fetching events
start_date = datetime.now(pytz.utc)
end_date = start_date + timedelta(days=365)
# Format dates correctly for the Graph API in ISO 8601 format
start_date_str = start_date.strftime("%Y-%m-%dT%H:%M:%S%z")
end_date_str = end_date.strftime("%Y-%m-%dT%H:%M:%S%z")
# Insert colon in timezone offset
start_date_str = start_date_str[:-2] + ":" + start_date_str[-2:]
end_date_str = end_date_str[:-2] + ":" + end_date_str[-2:]
print(f"Fetching events from {start_date_str} to {end_date_str}")
# Set up the request configuration with query parameters as a dictionary
query_params = CalendarViewRequestBuilder.CalendarViewRequestBuilderGetQueryParameters(
start_date_time=start_date_str,
end_date_time=end_date_str,
select=['subject', 'start', 'end'],
top=100,
orderby=['start/dateTime ASC'],
#filter="contains(subject, 'from HR Works')"
)
headers = HeadersCollection()
headers.add("Prefer", 'outlook.timezone="Europe/Berlin"')
request_configuration = RequestConfiguration(
query_parameters=query_params,
headers=headers
)
all_events = []
try:
# Initial request
events_page = await graph_client.users.by_user_id(user_id).calendars.by_calendar_id(calendar_id).events.get(request_configuration=request_configuration)
...
но проверяя их, я вижу много событий с 2023 года?
например, отсутствие с 2023-10-13T10:00:00.0000000 по 2023-10 -13T11:00:00.0000000:
В чем моя проблема? Я пытался настроить временные метки, но ничего не получилось.
Также изучал официальную документацию, которая не помогла:
https://learn.microsoft.com/en-us /graph/sdks/create-requests?tabs=python#use-select-to-control-the-properties-returned
РЕДАКТИРОВАТЬ: использование этого запроса
Код: Выделить всё
https://graph.microsoft.com/v1.0/me/calendarView?startDateTime=2023-06-14T00:00:00Z&endDateTime=2024-06-15T00:00:00ZПодробнее здесь: https://stackoverflow.com/questions/790 ... r-start-da