#'})\n",
"\n",
"# Note\n",
"itemHeader.update({'nota': '#'})\n",
"\n",
"# e18 Oggetto digitale allegato (nome)\n",
"itemHeader.update({'oggetto_digitale': ''})\n",
"\n",
"#0: Le varie id dei nodi parent\n",
"itemHeader.update(\n",
"{'id_subfonds': '',\n",
" 'id_fonds': '',\n",
" 'id_series': '',\n",
" 'id_subseries': '',\n",
" 'id_file': '',\n",
" 'id_otherlevel': '',\n",
" 'id_collection': ''})"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Test della funzione traduttore\n",
"\n",
"**NB:** l'ho definita basandomi sugli item, ma sembra funzionare decentemente anche sugli altri livelli!"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"id_fonds: IT-ASPO-GT001-0000000\n\nid: IT-ASPO-GT001-0000002\n\naudience: external\n\ntipologia: scheda anagrafica\n\nrepository: Archivio di Stato di Prato\n\nid_oggetto: \n\nriferimento_registro: SS\n\ntitolo_aspo: \n\nnome_bambino: Potidio\n\nmatricola: 112\n\ndata_periodo: 1762\n\ndescrizione_contrassegno: Cordoncino con due brevi in stoffa verde con nappe multicolore e con medaglia rettangolare contenente un disegno della Madonna con bambino.\n\noggetto_digitale: 484_a.JPG\n\n"
]
}
],
"source": [
"test = allCs2['item'][1]\n",
"toShow = traduttoreItem(test)\n",
"for key in toShow.keys():\n",
" print(key + ': ' + str(toShow[key]))\n",
" print()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Export\n",
"\n",
"Produciamo il CSV per gli item tracciando, al solito, il tempo impiegato."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"Tempo trascorso: 0.16898107528686523\n"
]
}
],
"source": [
"# Do it! Export del CSV - items.\n",
"\n",
"ts1 = datetime.timestamp(datetime.now())\n",
"\n",
"# Apro il file per l'export\n",
"with open(export_dir + \"data_item.csv\", \"w\", newline=\"\") as csv_file:\n",
" # Definisco la classe-motore per l'export\n",
" writer = csv.DictWriter(csv_file, fieldnames=list(itemHeader.keys()))\n",
" # Scrivo l'intestazione\n",
" writer.writeheader()\n",
" # Scrivo la seconda riga, esplicativa\n",
" writer.writerow(itemHeader)\n",
" # Scrivo gli item tradotti, uno a uno\n",
" for ii in range(len(allCs2['item'])):\n",
" test = allCs2['item'][ii]\n",
" writer.writerow(traduttoreItem(test))\n",
"\n",
"print('Tempo trascorso:', datetime.timestamp(datetime.now()) - ts1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Altri livelli"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Definisco un dizionario ridotto per l'header delle *subseries*, poi esporto -- per il momento con lo stesso traduttore usato per gli *item*"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"*Rinse & Repeat* con i livelli *series*, *subfonds* e *fonds*"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"Tempo trascorso: 0.019446849822998047\n"
]
}
],
"source": [
"ts1 = datetime.timestamp(datetime.now())\n",
"\n",
"fondsKeys = set()\n",
"for ii in range(len(allCs2['fonds'])):\n",
" test = allCs2['fonds'][ii]\n",
" fondsKeys = fondsKeys.union( traduttoreItem(test).keys() )\n",
"\n",
"fondsHeader = OrderedDict()\n",
"for key in itemHeader:\n",
" if(key in fondsKeys):\n",
" fondsHeader[key] = itemHeader[key]\n",
"\n",
"\n",
"with open(export_dir + \"data_fonds.csv\", \"w\", newline=\"\") as csv_file:\n",
" writer = csv.DictWriter(csv_file, fieldnames=list(fondsHeader.keys()))\n",
" writer.writeheader()\n",
" writer.writerow(fondsHeader)\n",
" for ii in range(len(allCs2['fonds'])):\n",
" test = allCs2['fonds'][ii]\n",
" writer.writerow(traduttoreItem(test))\n",
"\n",
"print('Tempo trascorso:', datetime.timestamp(datetime.now()) - ts1)"
]
}
],
"metadata": {
"kernelspec": {
"name": "python373jvsc74a57bd031f2aee4e71d21fbe5cf8b01ff0e069b9275f58929596ceb00d14d90e3e16cd6",
"display_name": "Python 3.7.3 64-bit"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.3"
},
"metadata": {
"interpreter": {
"hash": "31f2aee4e71d21fbe5cf8b01ff0e069b9275f58929596ceb00d14d90e3e16cd6"
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}