{ "cells": [ { "cell_type": "markdown", "id": "instructional-favor", "metadata": {}, "source": [ "## Ukázka práce s dalšími typy formátů" ] }, { "cell_type": "markdown", "id": "21313b8d", "metadata": {}, "source": [ "Nejprve naimportujeme knihovny a potřebné moduly. Pro účely notebooku je třeba přidat cestu k modulu pywsdp do PATH." ] }, { "cell_type": "code", "execution_count": 1, "id": "fewer-right", "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "library_path = os.path.abspath(os.path.join(\"../../\"))\n", "sys.path.append(library_path)\n", "\n", "from pywsdp.modules import CtiOS\n", "from pywsdp.modules.CtiOS import OutputFormat\n" ] }, { "cell_type": "markdown", "id": "75219328", "metadata": {}, "source": [ "Příhlásíme se k modulu CtiOS. Pro tento účel využijeme testovací přístupové údaje do DP." ] }, { "cell_type": "code", "execution_count": 2, "id": "b71f2fbd", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "ctiOS - INFO - Logovaci zpravy ulozeny v adresari: /tmp/ctiOS\n" ] } ], "source": [ "creds_test = [\"WSTEST\", \"WSHESLO\"]\n", "ctios = CtiOS(creds_test, trial=True)" ] }, { "cell_type": "markdown", "id": "b10b3a20", "metadata": {}, "source": [ "Načteme identifikátory z JSON souboru." ] }, { "cell_type": "code", "execution_count": 3, "id": "654c8be8", "metadata": {}, "outputs": [], "source": [ "json_path_ctios = os.path.abspath(\n", " os.path.join(library_path, \"tests\", \"data\", \"input\", \"ctios_template.json\")\n", ")\n", "parametry_ctiOS_json = ctios.nacti_identifikatory_z_json_souboru(json_path_ctios)" ] }, { "cell_type": "markdown", "id": "d9b1bdee", "metadata": {}, "source": [ "Pošleme požadavek na službu ctiOS." ] }, { "cell_type": "code", "execution_count": 5, "id": "2719c63b", "metadata": { "scrolled": true }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "ctiOS - INFO - \n", "ctiOS - INFO - Požadovaná akce byla úspěšně provedena.\n", "ctiOS - INFO - POSIDENT m+o3Qoxrit4ZwyJIPjx3X788EOgtJieiZYw/eqwxTPERjsqLramxBhGoAaAnooYAliQoVBYy7Q7fN2cVAxsAoUoPFaReqsfYWOZJjMBj/6 NEPLATNY IDENTIFIKATOR\n", "ctiOS - INFO - POSIDENT mSH6sS5yv6vA2jEOtyHeXaXIJpC2m0Ai56aKzsVmEphUNyjFQYgC8MOLnu3+3Zugm8JQW2AJqEJYcSiqXdPbnb/03PKgyNkYWaS876wv0t NEPLATNY IDENTIFIKATOR\n", "ctiOS - INFO - POSIDENT xairWnG248pu7itR19AIT87mDFI8yY0K0ms7v/iDY679wQ4EN5bMhMPSTXxgWDxMWZ0IoV/ihjGkNMXeqXHrMZsEbHBTzD9RUIOXw5M1hmE= USPESNE STAZEN\n", "ctiOS - INFO - POSIDENT 4m3Yuf1esDMzbgNGYW7kvzjlaZALZ3v3D7cXmxgCcFp0RerVtxqo8yb87oI0FBCtp49AycQ5NNI3vl+b+SEa+8SfmGU4sqBPH2pX/76wyBI= USPESNE STAZEN\n", "ctiOS - INFO - POSIDENT BBgBQ2wok0L43hEZUEeieq8FrrQsT1SHIrpQBRwgLw2uTvTsXvGloIYnr+7J2z6t/hadCsyhcbxgrf47ByzpbY5TjyiUPxyXhlS73MKArjs= USPESNE STAZEN\n", "ctiOS - INFO - POSIDENT ltTJU+/1imoqO4saz1ta1r88QGUxEkjRTfHUiC9Y9yfDKSM4c8soK/vz7bGd1JNwQPUiFayJQdLN0gPkusnnoNLo47RqbEoQxfg+eEuvTaQ= USPESNE STAZEN\n", "ctiOS - INFO - POSIDENT OlVCtLEjQ+aNPyQNdT0JZOkkxvwl8t9DllRl/HiNx7G3QFyZnvKA4e2LBTSX+YuK41/rSMvAnm63ZeWPyZQCX77GuP1GZwwf2hVkKzVY/94= USPESNE STAZEN\n", "ctiOS - INFO - POSIDENT KdSYyo8J1zUPVqxHUtY+tYA2w7krH9U+59hCYU8TXGZ06e74GGekPinyLtiSz+gO7ZmpWetCSaxvu1nXa6+t7w92wpqfa5jPpkfv5HF9MMA= USPESNE STAZEN\n", "ctiOS - INFO - POSIDENT 5wQRil9Nd5KIrn5KWTf8+sksZslnMqy2tveDvYPIsd1cd9qHYs1V9d9uZVwBEVe5Sknvonhh+FDiaYEJa+RdHM3VtvGsIqsc2Hm3mX0xYfs= USPESNE STAZEN\n", "ctiOS - INFO - POSIDENT UKcYWvUUTpNi8flxUzlm+Ss5iq0JV3CiStJSAMOk6xHFQncZraFeO9yj8OGraKiDJ8eLB0FegdXYuyYWsEXiv2H9ws95ezlKNTqR6ze7aOnR3a7NWzWJfe+R5VHfU13+ USPESNE STAZEN\n", "ctiOS - INFO - Celkovy pocet dotazovanych identifikatoru na vstupu: 10\n", "ctiOS - INFO - Pocet odstranenych duplicitnich identifikatoru: 0\n", "ctiOS - INFO - Pocet pozadavku, do kterych byl dotaz rozdelen (pocet dotazu na server): 1\n", "ctiOS - INFO - Realny uspesne zpracovanych identifikatoru: 8\n", "ctiOS - INFO - Pocet neplatnych identifikatoru: 2\n", "ctiOS - INFO - Pocet expirovanych identifikatoru: 0\n", "ctiOS - INFO - Pocet identifikatoru k neexistujicim OS: 0\n" ] } ], "source": [ "slovnik, slovnik_chybnych = ctios.posli_pozadavek(parametry_ctiOS_json)" ] }, { "cell_type": "markdown", "id": "9025b508", "metadata": {}, "source": [ "Z logu zjistíme, že 2 identifikátory nebyly kvůli chybě NEPLATNY IDENTIFIKATOR zpracovány." ] }, { "cell_type": "markdown", "id": "da9593e3", "metadata": {}, "source": [ "Určíme si výstupní adresář. Pokud neexistuje, knihovna si ho sama při zápisu vytvoří." ] }, { "cell_type": "code", "execution_count": 6, "id": "77c1d9fc", "metadata": {}, "outputs": [], "source": [ "vystupni_adresar = os.path.abspath(\n", " os.path.join(library_path, \"tests\", \"data\", \"output\")\n", ")" ] }, { "cell_type": "markdown", "id": "cb079942", "metadata": {}, "source": [ "Úspěšně zpracované identifikátory vypíšeme do souboru Csv. Pokud některé identifikátory byly označeny jako chybné, výstup bude doplněn o JSON soubor se seznamem těchto identifikátorů a chyb, ke kterým došlo." ] }, { "cell_type": "code", "execution_count": 7, "id": "b8c5dc93", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "ctiOS - INFO - Vystup byl ulozen zde: /home/linduska/pywsdp/tests/data/output/ctios_21_12_56_10_01_2023.csv\n" ] } ], "source": [ "vystup = ctios.uloz_vystup(\n", " slovnik, vystupni_adresar, OutputFormat.Csv\n", ")" ] }, { "cell_type": "markdown", "id": "485e4fe0", "metadata": {}, "source": [ "Modul dále umožňuje uložení úspešně zpracovaných identifikátorů do JSON souboru." ] }, { "cell_type": "code", "execution_count": 9, "id": "1476f1f8", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "ctiOS - INFO - Vystup byl ulozen zde: /home/linduska/pywsdp/tests/data/output/ctios_21_16_05_10_01_2023.json\n" ] } ], "source": [ "vystup = ctios.uloz_vystup(\n", " slovnik, vystupni_adresar, OutputFormat.Json\n", ")" ] }, { "cell_type": "markdown", "id": "b4dd20fc", "metadata": {}, "source": [ "Pokud chceme vypsat, které identifikátory nebyly kvůli chybě zpracovány a k jaké chybě došlo, můžeme si uložit výstup neúspěšně zpracovaných identifikátorů do json souboru." ] }, { "cell_type": "code", "execution_count": 10, "id": "fd0f3d9f", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "ctiOS - INFO - Zaznam o nezpracovanych identifikatorech byl ulozen zde: /home/linduska/pywsdp/tests/data/output/ctios_errors_21_16_08_10_01_2023.json\n" ] } ], "source": [ "vystup_chybnych = ctios.uloz_vystup_chybnych(\n", " slovnik_chybnych, vystupni_adresar\n", ")" ] }, { "cell_type": "code", "execution_count": null, "id": "801c0461", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "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.10.12" } }, "nbformat": 4, "nbformat_minor": 5 }