-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
36 lines (33 loc) · 1.35 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import { Client } from "@notionhq/client"
import { NOTION_API_KEY, DATABASE_ID } from './config.js';
import {data} from './data.js';
// Initialisez le client Notion
const notion = new Client({ auth: NOTION_API_KEY });
// Remplacez par l'ID de la page qui contient la base de données
const databaseId = DATABASE_ID;
async function addItem(item) {
try {
await notion.pages.create({
parent: { database_id: databaseId },
properties: {
Name: { title: [{ text: { content: item.name } }] },
// prix: {number: parseFloat(item.prix),},
prix: {number: parseFloat(item.prix.replace(/\s+|€/g, '')),},
kilometrage: {number: parseFloat(item.kilometrage),},
annee: {number: parseInt(item.annee, 10),},
pro: { checkbox: item.professionnel },
lieu: { rich_text: [{ text: { content: item.lieu } }] },
url: { url: item.url },
},
});
console.log(`Item ${item.name} ajouté à la base de données Notion.`);
} catch (error) {
console.error(`Erreur lors de l'ajout de l'élément ${item.name} :`, error);
}
}
(async () => {
for (const item of data) {
await addItem(item);
}
console.log("Toutes les données ont été importées dans la base de données Notion.");
})();