abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 21:11 | IT novinky

    Na dnešní akci Made by Google 2025 (YouTube) byly představeny telefony Pixel 10 s novým čipem Google Tensor G5 a novými AI funkcemi, hodinky Pixel Watch 4 a sluchátka Pixel Buds 2a.

    Ladislav Hagara | Komentářů: 2
    včera 14:11 | Nová verze

    The Document Foundation oznámila vydání nové major verze 25.8 svobodného kancelářského balíku LibreOffice. Podrobný přehled nových vlastností i s náhledy v poznámkách k vydání (cs) a také na Youtube a PeerTube.

    Ladislav Hagara | Komentářů: 3
    včera 04:00 | Nová verze

    Zeek (Wikipedie), původně Bro, byl vydán v nové major verzi 8.0.0. Jedná se o open source platformu pro analýzu síťového provozu. Vyzkoušet lze online.

    Ladislav Hagara | Komentářů: 0
    19.8. 23:55 | Zajímavý software

    Emacs na stříhání videa? Klidně.

    Ladislav Hagara | Komentářů: 6
    19.8. 15:55 | Nová verze

    Byl vydán Mozilla Firefox 142.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 142 je již k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    19.8. 13:22 | Zajímavý článek

    Python Developers Survey 2024, výsledky průzkumu mezi vývojáři v Pythonu organizovaném Python Software Foundation ve spolupráci se společností JetBrains v říjnu a listopadu loňského roku. Zúčastnilo se 30 tisíc vývojářů z 200 zemí. Linux používá 59 % z nich.

    Ladislav Hagara | Komentářů: 0
    19.8. 04:00 | Zajímavý článek

    Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.08.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.

    Ladislav Hagara | Komentářů: 2
    19.8. 01:55 | Nová verze

    Byla vydána nová verze 2.51.0 distribuovaného systému správy verzí Git. Přispělo 91 vývojářů, z toho 21 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 2
    19.8. 01:33 | Zajímavý článek

    Po roce bylo vydáno nové číslo magazínu Phrack: Phrack 72.

    Ladislav Hagara | Komentářů: 4
    18.8. 19:33 | Pozvánky

    OpenSSL Corporation zve na den otevřených dveří ve středu 20. srpna v Brně a konferenci OpenSSL od 7. do 9. října v Praze.

    Ladislav Hagara | Komentářů: 6
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (81%)
     (7%)
     (7%)
     (0%)
     (4%)
     (0%)
    Celkem 27 hlasů
     Komentářů: 4, poslední 19.8. 16:48
    Rozcestník

    Dotaz: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?

    radicz avatar 26.5.2018 21:07 radicz
    Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Přečteno: 2226×
    Zdar, mam python skript, ktery slouzi k autentikaci, jeho vystupy mohou byt dva, a to:

    1) skript vyhodi prompt do terminalu pro zadani autentikacniho kodu, pokud jeste dany user neni autentikovan
    2) pokud je dany user autentikovan, skript nevypise nic

    Mym cilem je premostit tento skript do weboveho xichtu, tedy ze user zada sve udaje, se kteryma se chce autentikovat, na serveru by se mel spustit jiz zminovany python skript, a pokud by vyskocil prompt pro zadani auth kodu, tak i userovi zobrazit nejaky popup pro zadani auth kodu, a ten poslat zpatky do skriptu a dokoncit tak autentikaci.

    Zatim se mi pres websockety povedlo akorat to, ze se auth skript na serveru spusti, pak pomoci pexpect modulu userovi na webu zobrazim jestli je vyzadovana autentikace ci nikoliv (pokud ano tak zobrazim pop up pro vlozeni auth kodu), tady ale bohuzel koncim, protoze nevim jak se vratit zpatky do python funkce ze ktere uz jsem jednou vyskocil.

    Chtel bych se tedy zeptat, jestli je vubec takovato komunikace s pythonim skriptem mozna pres web sockety, a nebo na to jdu uplne ze spatne strany, a existujou mnohem lepsi cesty jak toto vyresit?

    Za pripadne odpovedi dekuji!

    Odpovědi

    26.5.2018 21:43 NN
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Nemuzes ten autentizacni skript prepsat pro web? Bylo by to daleko cistsi reseni.
    radicz avatar 28.5.2018 22:20 radicz
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    hmm mozna bych mohl nejak sahnout do te knihovny ktera tu autentizaci poskytuje, ale porad mam problem jak se usera zeptat na auth code pokud je potreba
    28.5.2018 14:06 Petr
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Jak ten skript spouštíš? Nechápu tu cestu. Máš skript, webový prohlížeč, webový server? Skript spouštíš ze serveru který komunikuje s prohlížečem přes websocket? Server je v pythonu, php nebo v čem?
    radicz avatar 28.5.2018 22:19 radicz
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    mam webovy server v pythonu (flask), na stejnem serveru je skript ktery, jak jsi rekl komunikuje s prohlizecem pres websocket
    4.6.2018 15:34 Ja
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Obávám se, že musíš funkci autentikace volat dvakrát - nejdřív ji zavolat bez vstupu a zjistit podle výsledku, jsi-li přihlášený, či nikoliv. Pokud ano, vrátíš do browseru informaci že je přihlášeno a vše ok. Pokud ne, vrátíš browseru formulář pro zadání auth kódu a čekáš na kód.

    Zhruba takto:
    
    @app.route("/")
    def zacatek():
        result = auth("")
        if result:
           return "Already authenticated!"
        else:
           return """<form action="/auth" methid="POST">zadej auth:<input type="password" name="auth"><input type="submit"></form>"""
    
    @app.route("/auth", methods=["GET"])
    def auth():
        result = auth(request.form["auth"])
        if result:
           return "Good, authenticated!"
        else:
           return "Bad auth!"
    
    
    Je to jen letmý nástřel psaný naslepo, ale princip je asi zřejmý.
    radicz avatar 7.6.2018 16:16 radicz
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Dnes vyzkousim. On asi bude problem v mem pristupu, chtel jsem to mermomoci napsat, bez refreshe stranky, tedy za pomoci js, tak ze user hned uvidi co se deje, vyskoci mu hned auth input atd. Diky tvemu prikladu vidim, ze kdyz to udelam takhle stavove, tak si usetrim spoustu nervu. Dekuji!
    8.6.2018 08:38 Ja
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Pochopitelně to můžeš udělat i bez reloadu stránky, když ten "server" z minulého příspěvku předěláš aby vracel odpovědi v jsonu, případně nastavoval http status kódy a javascript pošle ajaxem dotaz na informaci o přihlášení (na tu url "/"), když dostane info že přihlášený není, tak zobrazí formulář a po vyplnění zas ajaxem odešle údaje na "/auth" a podle výsledku informuje uživatele. Prakticky všechno co se dá udělat klasickým odesíláním stránky se dá nahradit sekvencí volání ajaxu (tedy až na volání http z https apod.).
    8.6.2018 08:40 Ja
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Mimochodem, mám tam chybu - form odesílám metodou POST a /auth mám navěšené na GET - správně by mělo být oboje POST. Jak jsem psal, je to jen letmý nástřel.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.