diff --git a/custom-skills/31-notion-organizer/code/scripts/notion_search.py b/custom-skills/31-notion-organizer/code/scripts/notion_search.py index c08ef4a..8ce13b1 100644 --- a/custom-skills/31-notion-organizer/code/scripts/notion_search.py +++ b/custom-skills/31-notion-organizer/code/scripts/notion_search.py @@ -114,8 +114,13 @@ def search_candidates( if prop_filter: params["filter"] = prop_filter - response = notion.data_sources.query(**params) - for page in response.get("results", []): + try: + response = notion.data_sources.query(**params) + except Exception as exc: + print(f"Warning: query failed for database {db_id}: {exc}", + file=sys.stderr) + continue + for page in response.get("results") or []: page_id = page.get("id") if page_id and page_id not in seen_ids: seen_ids.add(page_id) @@ -124,8 +129,13 @@ def search_candidates( return candidates else: # Workspace-wide search - response = notion.search(query=query, page_size=100) - for item in response.get("results", []): + try: + response = notion.search(query=query, page_size=100) + except Exception as exc: + print(f"Warning: workspace search failed for variant {query!r}: {exc}", + file=sys.stderr) + continue + for item in response.get("results") or []: if item.get("object") != "page": continue page_id = item.get("id")