|
|
|
@@ -1,5 +1,6 @@ |
|
|
|
import json |
|
|
|
import logging |
|
|
|
import operator |
|
|
|
from typing import Any, Optional, cast |
|
|
|
|
|
|
|
import requests |
|
|
|
@@ -130,13 +131,15 @@ class NotionExtractor(BaseExtractor): |
|
|
|
data[property_name] = value |
|
|
|
row_dict = {k: v for k, v in data.items() if v} |
|
|
|
row_content = "" |
|
|
|
for key, value in row_dict.items(): |
|
|
|
for key, value in sorted(row_dict.items(), key=operator.itemgetter(0)): |
|
|
|
if isinstance(value, dict): |
|
|
|
value_dict = {k: v for k, v in value.items() if v} |
|
|
|
value_content = "".join(f"{k}:{v} " for k, v in value_dict.items()) |
|
|
|
row_content = row_content + f"{key}:{value_content}\n" |
|
|
|
else: |
|
|
|
row_content = row_content + f"{key}:{value}\n" |
|
|
|
if "url" in result: |
|
|
|
row_content = row_content + f"Row Page URL:{result.get('url', '')}\n" |
|
|
|
database_content.append(row_content) |
|
|
|
|
|
|
|
has_more = response_data.get("has_more", False) |