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í
×
    dnes 23:22 | Nová verze

    Byla vydána verze 4.0 open source programu na kreslení grafů Veusz (Wikipedie). Přehled novinek v poznámkách k vydání. Proběhla portace na Qt 6.

    Ladislav Hagara | Komentářů: 0
    dnes 11:44 | Nová verze

    Dibuja je jednoduchý kreslící program inspirovaný programy Paintbrush pro macOS a Malování pro Windows. Vydána byla verze 0.26.0.

    Ladislav Hagara | Komentářů: 0
    včera 23:33 | Nová verze

    Byla vydána nová verze 9.13 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 21:44 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | Nová verze

    Byla vydána nová stabilní verze 3.22.0, tj. první z nové řady 3.22, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    30.5. 00:33 | IT novinky

    FEL ČVUT vyvinula robotickou stavebnici pro mladé programátory. Stavebnice Brian byla navržená speciálně pro potřeby populární Robosoutěže. Jde ale také o samostatný produkt, který si může koupit každý fanoušek robotiky a programování od 10 let, ideální je i pro střední školy jako výuková pomůcka. Jádro stavebnice tvoří programovatelná řídicí jednotka, kterou vyvinul tým z FEL ČVUT ve spolupráci s průmyslovými partnery. Stavebnici

    … více »
    Ladislav Hagara | Komentářů: 50
    29.5. 20:33 | Komunita

    Ubuntu bude pro testování nových verzí vydávat měsíční snapshoty. Dnes vyšel 1. snapshot Ubuntu 25.10 (Questing Quokka).

    Ladislav Hagara | Komentářů: 0
    29.5. 14:55 | Nová verze

    Společnost Netgate oznámila vydání nové verze 2.8.0 open source firewallové, routovací a VPN platformy pfSense (Wikipedie) postavené na FreeBSD. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    29.5. 14:00 | Nová verze

    Byla vydána nová verze 6.16 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Tor Browser byl povýšen na verzi 14.5.3. Linux na verzi 6.1.140. Další změny v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    29.5. 12:33 | Zajímavý článek

    Člověk odsouzený za obchod s drogami daroval letos ministerstvu spravedlnosti 468 kusů kryptoměny bitcoin, které pak resort v aukcích prodal za skoro miliardu korun. Darováním se zabývá policejní Národní centrála proti organizovanému zločinu (NCOZ). Deníku N to potvrdil přímo ministr spravedlnosti Pavel Blažek (ODS). Podle resortu bylo nicméně vše v souladu s právem.

    Ladislav Hagara | Komentářů: 59
    Jaký je váš oblíbený skriptovací jazyk?
     (56%)
     (31%)
     (7%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 172 hlasů
     Komentářů: 13, poslední 30.5. 12:26
    Rozcestník

    Vyhledávání dopravních spojení popáté a tečka

    31.7.2008 14:28 | Přečteno: 1515× | poslední úprava: 2.8.2008 21:56

    Je tu další pokrok ve vývoji skriptu pro hledání dopravních spojení v CLI. Tohle bude nejspíš na delší dobu poslední zápis. Nechci tak často okupovat titulní stránku s blogy, takže pokud se stane, že bych skript v budoucnu ještě upravoval, slibuji, že už mu věnuji samostatnou stránku někde na webu a informace o jeho adrese bude na toto téma poslední. A nebo možná ne.

    !!!UPDATE!!! Tak se i stalo, domovská stránka projektu je na http://code.google.com/p/spoje/.

    Ještě než se vrhnu na novinky, chtěl bych poděkovat všem dobrým duším za pozitivní ohlasy a náměty na zlepšení. A o čem se bude po dnešním zápisku mluvit?

    Implementace vypisování detailů o jednotlivých spojích (no, prakticky jen zastávky, časy příjezdů a odjezdů a nějaký ten balast okolo) se ukázala být ne až tak složitá. Sice jsem skript zase trochu zamotal, nicméně se dílo podařilo a komu tato funkce chyběla, nechť pátrá po přepínačích "-z" a "-Z".

    Přidání podpory pro vyhledávání podle času příjezdu se ukázalo být intelektuální výzvou. Úprava skriptu byla triviální, horší bylo vymyslet jak tuto funkci jednoduše zpřístupnit. Chtěů jsem přitom zachovat parametr "-c". Prvním nápadem byla specifikace času ve formátu "-c <10:00". I ti průměrní jistě tuší, že toto řešení je poměrně nešťastné. Já se přiznám, že mi to došlo až při pokusu o spuštění. Nebudu to protahovat, projel jsem na celé čáře a uchýlil se k formátu "-c 10:00p" ("p" jako příjezd). Tak nevím, jestli by "-C" nebylo lepší. Bude-li mít někdo jiné preference, nechť dá vědět, v dalších verzích to může být jinak. Na nějakou zpětnou kompatibilitu se tu nehraje.

    Zbytek úprav jsou jen formality: přepracoval jsem nápovědu a při zadávání datumu není nyní nutné uvádět rok. To je myslím vše.

    Plány do budoucna jsem již naznačil v úvodu. Střízlivé náměty na zlepšení a jiné ohlasy pište ještě do diskuze, v budoucnu pak na moji adresu uvedenou ve skriptu. Podle ankety má skript cca 7 uživatelů. Pevně věřím, že bude-li při nás stát štěstí, do konce roku překročíme desítku a za dalších deset let dvacítku. To bude ta správná chvíle na vydání fanouškovských triček, nízký počet uživatelů zaručí dostatečnou exkluzivitu a originalitu.

    Skript je ke stažení na stále stejné adrese. Na závěr pár ilustrací z terminálu:

    # Nasledujici prikazem vyhledame dopravni spojeni z Hlavniho nadrazi na Uvoz 
    # s prijezdem na Uvoz do 17:58 (vcetne). Mohli bychom tak povzbuzovat obsluhu 
    # v Pomalem baru pri otviracce, pokud by teda nebyl momentalne zavreny... 
    # nebo ze by uz ne?
    
    $./spoje.py -c 17:58p -s 3 brno "hlavni nadrazi" uvoz 
    --------------------
    Datum: 31.7.
      *    17:36  Hlavní nádraží, 100, tramvaj 4
    17:45    *    Úvoz, 100
    
    Pozn.: 9 min, 2 km, Základní 10 Kč
    --------------------
    Datum: 31.7.
      *    17:42  Hlavní nádraží, 100, tramvaj 4
    17:51    *    Úvoz, 100
    
    Pozn.: 9 min, 2 km, Základní 10 Kč
    --------------------
    Datum: 31.7.
      *    17:48  Hlavní nádraží, 100, tramvaj 4
    17:57    *    Úvoz, 100
    
    Pozn.: 9 min, 2 km, Základní 10 Kč
    
    
    # Vyhledame nejblizsi vlakovy spoj z Olomouce do Plzne a vypiseme detaily 
    # o trase pouzitych vlaku. 
    # Pro vypis pouze zastavek na trase slouzi parametr -z.
    
    $./spoje.py -s 1 -Z vlak olomouc plzen
    --------------------
    Datum: 31.7.
      *    14:17  Olomouc hl.n., vlak SC 506 SC PENDOLINO
    16:32    *    Praha-Holešovice, přesun asi 30 min
      *    17:24  Praha-Smíchov, vlak R 456 ALBERT EINSTEIN
    18:50    *    Plzeň hl.n.
    
    Pozn.: 4 hod 33 min, 360 km, 648 Kč / 422 Kč (zákaznické jízdné)
    
    === SC 506 SC PENDOLINO ===    Příj.   Odj.  Pozn.
     Ostrava hl.n.                        13:20           0 km
     Ostrava-Svinov                13:26  13:28           5 km
    *OLOMOUC HL.N.                 14:15  14:17         106 km
     Pardubice hl.n.               15:33  15:34         252 km
    *PRAHA-HOLEŠOVICE              16:32                356 km
    
    === R 456 ALBERT EINSTEIN ===    Příj.   Odj.  Pozn.
    *PRAHA-SMÍCHOV                          17:24           0 km
     Beroun                          17:53  17:54          39 km
     Hořovice                        18:08  18:09          58 km
     Rokycany                        18:30  18:31          87 km
    *PLZEŇ HL.N.                     18:50  19:00         110 km
     Domažlice                       19:44  19:46         169 km
     Furth i Wald                    20:11  20:21         191 km
     Cham(Oberpf)                    20:36  20:37         210 km
     Schwandorf                      21:05  21:21         258 km
     Regensburg Hbf                  21:48  21:57         300 km
     Neufahrn(Niederbay)             22:19  22:20         338 km
     Landshut(Bay)Hbf                22:34  22:36         361 km
     Freising                        22:56  22:57         395 km
     München Hbf                     23:21                436 km
    
    
    # a na zaver nova a ukecanejsi napoveda
    
    $./spoje.py
    
        Skript hleda dopravni spoje prostrednictvim serveru idos.cz
        Verze 0.45
    
        Pouziti:  spoje.py [prepinace] typ_spoje odkud[:kod] kam[:kod]
    
        Argumenty:
            typ_spoje  jedna z nasledujicich moznosti:
                         vlak - vlakova spojeni v CR
                         bus - autobusove spoje v CR
                         komb - kombinace autobusovych a vlakovych spoju v CR
                         brno - MHD v Brne (vcetne IDS JMK)
                         praha - MHD v Praze
                         ostrava - MHD v Ostrave
                         liberec - MHD v Liberci
            odkud      Retezec urcujici misto (zastavku) odjezdu. Viceslovny nazev
                       je treba (spolu s pripadnym kodem) uzavrit do uvozovek nebo
                       apostrofu.
            kam        Retezec urcujici misto (zastavku) prijezdu. Viceslovny nazev
                       je treba (spolu s pripadnym kodem) uzavrit do uvozovek nebo
                       apostrofu.
            kod        Retezec identifikujici misto v pripade nejednoznacneho zadani.
    
        Prepinace:
            -b         Batch mode - nepta se na pripadne upresneni spoje.
            -c cas     Cas odjezdu resp. prijezdu (do cilove stanice) hledaneho
                       spojeni (defaultni hodnotou je aktualni cas).
                       Cas odjezdu specifikujeme napriklad '-c 10:00'.
                       Cas prijezdu se specifikuje pomoci znaku 'p' hned za zadanou
                       hodnotou, tedy napriklad '-c 10:00p' oznacuje spojeni s casem
                       prijezdu pred 10:00.
            -d datum   Datum odjezdu/prijezdu (defaultni hodnotou je aktualni datum)
                       pouziti napriklad '-d 25.7.' nebo '-d 25.7.2008'.
                       Pri neuvedeni roku se pouzije aktualni kalendarni rok.
            -p cislo   Maximalni pocet prestupu (defaultni hodnota 3)
            -s cislo   Pocet hledanych spoju (defaultni hodnota 5)
            -z         U kazdeho spoje vypise seznam zastavek na trase
            -Z         U kazdeho spoje vypise seznam vsech zastavek
    
    

           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    31.7.2008 15:08 xaxa
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    $ chmod +x spoje.py $ ./spoje.py bash: ./spoje.py: /usr/bin/python: bad interpreter: No such file or directory $
    31.7.2008 15:11 fakenickname | skóre: 42 | blog: fakeblog
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Jeste jednou a lepe..
    $ ./spoje
    bash: ./spoje: No such file or directory
    $ chmod +x spoje.py 
    $ ./spoje.py 
    bash: ./spoje.py: /usr/bin/python: bad interpreter: No such file or directory
    $ whereis python
    python: /usr/local/bin/python /usr/local/man/man1/python.1.gz /usr/ports/lang/python
    $ head -n1 spoje.py 
    #!/usr/bin/python 
    $ 
    
    Pro tyhle veci by se mel pouzivat nejaky kouzelny prikaz misto samotne absolutni cesty, ale za boha si nemuzu vzpomenout jaky..
    31.7.2008 15:21 fakenickname | skóre: 42 | blog: fakeblog
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    ah.. uz sem to nasel.. http://en.wikipedia.org/wiki/Shebang_(Unix).. hlavne sekce "Portability"
    31.7.2008 15:27 fakenickname | skóre: 42 | blog: fakeblog
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    a jinak diky za pekny skriptik.. bude se hodit..
    31.7.2008 15:30 kkaarreell | skóre: 6 | blog: perkele
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Diky za pripomenuti, tohle je ta vec, co jsem chtel upravit a zapomnel. Musim si to psat. :-D
    31.7.2008 15:31 kkaarreell | skóre: 6 | blog: perkele
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Ehm, tim jsem chtel rict, ze uz je to opraveno.
    1.8.2008 09:46 miro
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka

    Časy příjezdů jsou paráda, moc díky za to. Ještě jednou smekám, moc užitečná věcička.

    Měl bych ještě jeden tip, když tu byla nad vaším předchozím blogpostem ta debata o conky. Bylo by fajn mít možnost zobrazit zpoždění vlaku (pokud je na cestě), případně mít možnost zobrazit zpoždění přímým zadáním čísla nebo názvu (příp. části názvu) vlaku (pokud ho znám). Ta druhá možnost asi není realizovatelná přes jizdnirady.idnes.cz (nikde jsem tam tuhle volbu nenašel) ani přes cd.cz (tam možnost zjistit polohu vlaku podle jeho čísla existuje, ale formulář je chráněný captchou), ale existuje možnost brát data odsud a odsud. Když mám jít někomu naproti k vlaku, hodilo by se mít v conky na ploše údaj o tom, kolik mám ještě času.

    Pokud už pro vás tenhle námět nebude taková výzva, abyste se tím zabýval, nevadí, i tak velký dík za stávající aplikaci. Ale pokud byste měl aspoň tip na nějaké šikovné howto kterak rozparsovat html v bashi (k pythonu jsem ještě vůbec nedostal, musel bych se ho naučit komplet od začátku), uvítám info, časem bych to případně zkusil sám (najdu-li čas na studium).

    1.8.2008 10:52 kkaarreell | skóre: 6 | blog: perkele
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Jak jsem to zacal cist, tak jsem si rikal, ze priste nekdo dalsi bude chtit hodinky s vodotriskem. :-D Ale o tech strankach se zpozdenim jsem nevedel. Jak budu mit cas, kouknu na to. Nemusel by to byt az takovej problem, ale nic neslibuju.
    1.8.2008 11:47 miro
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    priste nekdo dalsi bude chtit hodinky s vodotriskem. :-D
    Nic ve zlém, já to bral spíš jako
    Střízlivé náměty na zlepšení a jiné ohlasy pište ještě do diskuze (...)
    :-)
    2.8.2008 13:19 kkaarreell | skóre: 6 | blog: perkele
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Vsak jasne, ja jen ze nez jsem se docetl k tem odkazum, tak mi to moc strizlivy neprislo. :-D Ale dik za namet, libi se mi to, tak na tom zapracuju.
    2.8.2008 14:32 miro
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    No, já jsem původně myslel, že není moc reálná ani ta první možnost (tj. zobrazit zpoždění vlaku ne podle jeho čísla ale u vyhledaného spoje, který je už na cestě, tj. u spoje je ikonka hodin s javascriptovým popupem), ale když jsem viděl, že jste dokázal vyparsovat zastávky vyhledaných spojů (což je zřejmě dost totéž [?])... BTW by údaj získaný z originálních stránek byl o něco aktuálnější, na babitronu by měly být polohy osobáků "do 15 minut" od oficiálního zveřejnění, u ostatních vlaků "do 5 minut" (viz mnou odkazované stránky - poznámka v jejich zdrojovém kódu úplně dole). Ale ono to z babitronu většinou bude stačit (člověk zpravidla potřebuje sledovat rychlíky jedoucí z větších vzdáleností).

    BTW zdá se mi to, nebo poslední verze vašeho skriptu (na rozdíl od předchozích) už neukazuje spoje jedoucí až další den (speciálně jsem si toho všimnul u vlaků, které si zobrazuju v conky)?
    2.8.2008 16:05 kkaarreell | skóre: 6 | blog: perkele
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Aha, no ja totiz vubec nevedel, ze z originalnich stranek lze ziskat ten udaj o zpozdeni. Az tak jsem je nikdy nevyuzival, spis na tu hromadnou dopravu, takze tahle informace me uplne mijela. Nicmene ted kdyz to vim, tak ten udaj budu tahat z idosu.

    Pokud jde o ty spoje jedouci dalsi den, tak v tomhle ohledu jsem nic nemenil. Takze by to melo byt zpusobeno tim, ze ty spoje idos proste nevraci. Ja vyuzivam rozhrani vlak.cz, muzete se teda kdyztak podivat, jake spoje to dava tam. Ale podle toho, co jsem zkousel, tak to ty spoje dalsi den proste nevraci. Bohuzel. Kdyztak zkuste, jestli v tomto ohledu najdete nejaky rozdil v chovani mezi idos.cz a vlaky.cz.
    2.8.2008 21:53 kkaarreell | skóre: 6 | blog: perkele
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Tak uz mam ta zpozdeni vlaku pokusne implementovana. Zatim je to dostupne ve vyvojove verzi, jez je k dispozici prostrednictvim subversion, vice viz viz http://code.google.com/p/spoje/. Prohlednete si napovedu programu, trochu jsem zmenil prepinace.
    3.8.2008 12:23 miro
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Díky za vylepšení, bohužel mi právě začíná dovolená, tak se nebudu moci přiřadit k testerům. Ale těším se na to po návratu.
    1.8.2008 14:48 Jiří Jakeš | skóre: 22 | blog: Linuxovna_JJ | Taipei
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    ad babitron: Informace jsou k dispozici také výhradně v plain textu (Verze pro internet v mobilu).
    1.8.2008 15:11 miro
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Vida, tohle jsem neznal, to už (snad) dokonce zvládnu naparsovat i sám :-)
    Limoto avatar 1.8.2008 12:44 Limoto | skóre: 32 | blog: Limotův blog
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Myslím, že by ses měl naučit s nějakým VCS a použít nějakej jeho veřejnej hosting.
    2.8.2008 13:17 kkaarreell | skóre: 6 | blog: perkele
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Myslels asi CVS. No, prijde mi to na ten skript zbytecny. Vyhodou by snad mohla byt snazsi aktualizace pro uzivatele, ale pro me by byl spis komplikaci.
    2.8.2008 21:50 kkaarreell | skóre: 6 | blog: perkele
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    No, tak nakonec jsem projekt nahral na googlecode a tim padem jsem se dostal i k subversion, viz http://code.google.com/p/spoje/
    Limoto avatar 3.8.2008 19:57 Limoto | skóre: 32 | blog: Limotův blog
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Myslel jsem VCS (Version Control System) obecně, CVS je konkrétní (mj. asi nejhorší) implementace.
    3.8.2008 21:27 kkaarreell | skóre: 6 | blog: perkele
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení popáté a tečka
    Ach tak.

    Založit nové vláknoNahoru

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