Convert notion database to pandas

This commit is contained in:
cato447
2021-09-04 01:18:00 +02:00
parent 725147cc51
commit 022ae57fee

21
main.py
View File

@@ -1,9 +1,15 @@
import configparser import configparser
from notion.client import NotionClient
from notion.client import *
from notion.collection import NotionDate
import pandas as pd import pandas as pd
from pprint import pprint
def get_dicts_of_all_items(cv) -> list:
return [row.get_all_properties() for row in cv.collection.get_rows()]
def convert_database_to_pandas(cv):
dataframe = pd.DataFrame(get_dicts_of_all_items(cv))
dataframe['ablaufdatum'] = [None if time is None else time.start for time in dataframe['ablaufdatum']]
return dataframe
def main(): def main():
config = configparser.ConfigParser() config = configparser.ConfigParser()
@@ -13,11 +19,8 @@ def main():
# Access a database using the URL of the database page or the inline block # Access a database using the URL of the database page or the inline block
cv = client.get_collection_view(config.get("notion", "database_url")) cv = client.get_collection_view(config.get("notion", "database_url"))
dataframe = convert_database_to_pandas(cv)
print(get_all_available_items(cv)) dataframe.to_csv("test.csv")
def get_all_available_items(cv):
return [row.name for row in cv.collection.get_rows() if int(row.anzahl) > 0]
if __name__ == '__main__': if __name__ == '__main__':
main() main()