Veřejné API

Veřejné API knihovny tvoří moduly. Ty umožňují intuitivní dotazování vybraných WSDP služeb a ukládání odpovědí do různých formátů.

pywsdp.modules

Inheritance diagram of pywsdp.base.WSDPBase, pywsdp.base.SestavyBase, pywsdp.modules.CtiOS, pywsdp.modules.GenerujCenoveUdajeDleKu, pywsdp.modules.SeznamSestav, pywsdp.modules.VratSestavu, pywsdp.modules.SmazSestavu

Společné API pro všechny moduly

class WSDPBase(creds: dict, trial: dict = False)

Trida vytvarejici spolecne API pro WSDP sluzby. Odvozene tridy musi mit nastavit skupinu sluzeb a nazev sluzby.

Parametry:
  • creds – slovnik pristupovych udaju [uzivatel, heslo]

  • trial – True/False - dotazovani na SOAP sluzbu na zkousku/dotazovani na ostrou SOAP sluzbu

property skupina_sluzeb: dict

Nazev typu skupiny sluzeb - ctiOS, sestavy, vyhledat, ciselniky atd. Nazev musi korespondovat se slovnikem WSDL endpointu - musi byt malymi pismeny.

property nazev_sluzby: dict

Nazev sluzby, napr. ctiOS, generujCenoveUdajeDleKu. Nazev sluzby/metody uveden v Popisu webovych sluzeb pro uzivatele.

property pristupove_udaje: dict

Vraci pristupove udaje pod kterymi doslo k pripojeni ke sluzbe.

property log_adresar: str

Vypise cestu k adresari, ve kterem se budou vytvaret log soubory. Zaroven funguje i jako setter pro nastaveni vlastniho logovaciho adresare.

property testovaci_mod: bool

Vraci boolean hodnotu podle toho zda uzivatel pristupuje k ostrym sluzbam (False) nebo ke sluzbam na zkousku (True)

posli_pozadavek(slovnik_identifikatoru: dict) dict

Zpracuje vstupni parametry pomoci nektere ze sluzeb a vysledek ulozi do slovniku.

Parametry:

slovnik – vstupni parametry specificke pro danou sluzbu.

Vrací:

objekt zeep knihovny prevedeny na slovnik a upraveny pro vystup

Společné API pro hlavní moduly typu sestava

class SestavyBase(creds: dict, trial: dict = False)

Bases: WSDPBase

Trida definujici spolecne API pro moduly pracujici se sestavami. Z teto tridy nededi specificke sestavy, ktere slouzi pro praci s jinymi sestavami, jako napriklad SeznamSestav.

Parametry:
  • creds

  • trial

nacti_identifikatory_z_json_souboru(json_path: str) dict

Pripravi identifikatory z JSON souboru pro vstup do zavolani sluzby ze skupiny WSDP sestavy.

Parametry:

json_path – cesta ke vstupnimu json souboru

Vrací:

slovnik dat pro vstup do sluzby

vypis_info_o_sestave(sestava: dict) dict

S parametrem id sestavy zavola sluzbu SeznamSestav, ktera vypise info o sestave.

Parametry:

sestava – slovnik vraceny pri vytvoreni sestavy

Vrací:

vraci slovnik ve tvaru {‚zprava‘: ‚‘, ‚idSestavy‘: ‚‘, ‚nazev‘: ‚‘, ‚pocetJednotek‘: ‚‘, ‚pocetStran‘: ‚‘, ‚cena‘: ‚‘, ‚datumPozadavku‘: ‚‘, ‚datumSpusteni‘: ‚‘, ‚datumVytvoreni‘: ‚‘, ‚stav‘: ‚‘, ‚format‘: ‚‘, ‚elZnacka‘: ‚‘}

zauctuj_sestavu(sestava: dict) dict

Vezme id sestavy z vytvorene sestavy a zavola sluzbu VratSestavu, ktera danou sestavu zauctuje.

Parametry:

sestava – slovnik vraceny pri vytvoreni sestavy

Vrací:

vraci slovnik ve tvaru {‚zprava‘: ‚‘, ‚idSestavy‘: ‚‘, ‚nazev‘: ‚‘, ‚pocetJednotek‘: ‚‘, ‚pocetStran‘: ‚‘, ‚cena‘: ‚‘, ‚datumPozadavku‘: ‚‘, ‚datumSpusteni‘: ‚‘, ‚datumVytvoreni‘: ‚‘, ‚stav‘: ‚‘, ‚format‘: ‚‘, ‚elZnacka‘: ‚‘, ‚souborSestavy‘: ‚‘}

vymaz_sestavu(sestava: dict) dict

Vezme id sestavy z vytvorene sestavy a zavola sluzbu SmazSestavu, ktera danou sestavu z uctu smaze.

Parametry:

sestava – slovnik vraceny pri vytvoreni sestavy

Vrací:

slovnik ve tvaru {‚zprava‘: ‚‘}

API k hlavním modulům

Čti OS

class CtiOS(creds: dict, trial: dict = False)

Bases: WSDPBase

Trida definujici rozhrani pro praci se sluzbou ctiOS.

Parametry:
  • creds

  • trial

nacti_identifikatory_z_db(db_path: str, sql_dotaz=None) dict

Pripravi identifikatory z SQLITE databaze pro vstup do zavolani sluzby ctiOS.

Parametry:
  • db_path – cesta k SQLITE databazi ziskane rozbalenim VFK souboru

  • sql_dotaz – omezeni zpracovavanych identifikatoru pres SQL dotaz, napr. SELECT * FROM OPSUB order by ID LIMIT 10

Vrací:

data pro vstup do sluzby ctiOS

nacti_identifikatory_z_json_souboru(json_path: str) dict

Pripravi identifikatory z JSON souboru pro vstup do zavolani sluzby ctiOS.

Parametry:

json_path – cesta k JSON souboru s pseudonymizovanymi identifikatory.

Vrací:

data pro vstup do sluzby ctiOS

posli_pozadavek(slovnik_identifikatoru: dict) dict

Zpracuje vstupni parametry pomoci nektere ze sluzeb a vysledek ulozi do slovniku. Zaroven vypocte zaloguje statistiku procesu.

Parametry:

slovnik – vstupni parametry specificke pro danou sluzbu.

Vrací:

tuple (slovnik - uspesne vracene pseudoidentifikatory s osobnimi udaji, slovnik - chybne pseudoidentifikatory s popisem chyby)

uloz_vystup(vysledny_slovnik: dict, vystupni_adresar: str, format_souboru: OutputFormat)

Konvertuje osobni udaje typu slovnik ziskane ze sluzby ctiOS do souboru o definovanem formatu a soubor ulozi do definovaneho vystupniho adresare. Pokud adresar neexistuje, vytvori ho. U databaze nejprve prekopiruje vstupni soubor do pozadovaneho adresare a pak databazi updatuje o osobni udaje.

Parametry:
  • vysledny_slovnik – slovnik vraceny pro uspesne zpracovane identifikatory

  • vystupni_adresar – cesta k vystupnimu adresari

  • format_souboru – format typu OutputFormat.GdalDb, OutputFormat.Json nebo OutputFormat.Csv

Vrací:

cesta k vystupnimu souboru

uloz_vystup_aktualizuj_db(vysledny_slovnik: dict)

Updatuje vstupni databazi o osobni udaje ziskane ze sluzby ctiOS.

Parametry:

vysledny_slovnik – slovnik vraceny pro uspesne zpracovane identifikatory

Vrací:

cesta k updatovane databazi

uloz_vystup_chybnych(slovnik_chybnych_identifikatoru: dict, vystupni_adresar: str)

Ulozi slovnik chybnych identifikatoru vraceny metodou posli_pozadavek do json souboru.

Parametry:
  • slovnik_chybnych_identifikatoru – slovnik vraceny pro neuspesne zpracovane identifikatory

  • vystupni_adresar – cesta k vystupnimu adresari

vypis_statistiku()

Vytiskne statistiku zpracovanych pseudonymizovanych identifikatoru (POSIdentu). Pocet neplatnych identifikatoru = pocet POSIdentu, ktere nebylo mozne rozsifrovat; Pocet expirovanych identifikatoru = pocet POSIdentu, kterym vyprsela casova platnost; Pocet identifikatoru k neexistujicim OS = pocet POSIdentu, ktere obsahuji neexistujici OS ID (neni na co je napojit); Pocet uspesne zpracovanych identifikatoru = pocet identifikatoru, ke kterym byly uspesne zjisteny osobni udaje; Pocet odstranenych duplicit = pocet vstupnich zaznamu, ktere byly pred samotnym zpracovanim smazany z duvodu duplicit; Pocet dotazu na server = pocet samostatnych dotazu, do kterych byl pozadavek rozdelen

Generuj cenové údaje dle katastrálních území

class GenerujCenoveUdajeDleKu(creds: dict, trial: dict = False)

Bases: SestavyBase

Trida definujici rozhrani pro praci se sluzbou Generuj cenove udaje dle katastralnich uzemi.

Parametry:
  • creds

  • trial

uloz_vystup(zauctovana_sestava: dict, vystupni_adresar: str) str

Rozkoduje soubor z vystupnich hodnot sluzby VratSestavu a ulozi ho na disk.

Parametry:

zauctovana_sestava – slovnik vraceny po zauctovani sestavy

Typ návratové hodnoty:

string - cesta k vystupnimu souboru

API k modulům na správu sestav

Seznam Sestav

class SeznamSestav(creds: dict, trial: dict = False)

Bases: WSDPBase

Trida definujici rozhrani pro praci se sluzbou seznamSestav. Pouzije se v pripade, kdy znam sestavu a chci tuto sluzbu zavolat samostatne.

Parametry:
  • creds

  • trial

Vrácení sestavy

class VratSestavu(creds: dict, trial: dict = False)

Bases: WSDPBase

Trida definujici rozhrani pro praci se sluzbou vratSestavu. Pouzije se v pripade, kdy znam sestavu a chci tuto sluzbu zavolat samostatne.

Parametry:
  • creds

  • trial

Smazání sestavy

class SmazSestavu(creds: dict, trial: dict = False)

Bases: WSDPBase

Trida definujici rozhrani pro praci se sluzbou smazSestavu. Pouzije se v pripade, kdy znam sestavu a chci tuto sluzbu zavolat samostatne.

Parametry:
  • creds

  • trial