def update_fb_events(): url = "https://graph.facebook.com/v2.3/" payload = {"access_token": FACEBOOK_ACCESS_TOKEN} for user_id, events in get_users().items(): user = User.query.filter(User.fb_id == user_id).first() for chunk in utils.grouper(events): ids = ",".join(event_data["id"] for event_data in chunk) payload["ids"] = ids # new request to get complete information r = requests.get(url, params=payload) data = json.loads(r.text) for event_id, event_data in data.items(): event = Event.query.filter(Event.fb_id == event_id).first() if event is None: event = Event(fb_id=event_id) start = iso8601.parse_date(event_data["start_time"]) event.start = start.replace(tzinfo=None) if "end_time" in event_data: end = iso8601.parse_date(event_data["end_time"]) event.end = end.replace(tzinfo=None) event.user_id = user.id event.description = event_data.get("description", "") event.location = event_data.get('location', None) event.name = event_data['name'] event.url = "https://www.facebook.com/" + event_data['id'] db.session.add(event) db.session.commit()