kokolem / bakalari-next-day

Jednoduchý python script zobrazující co si vzít na příští den podle rozvrhu z Bakalářů.
GNU General Public License v3.0
5 stars 3 forks source link

Volno #2

Open ejdrien opened 5 years ago

ejdrien commented 5 years ago

Pokud se zítra nejde do školy - je nějaký svátek nebo třeba ředitelské volno, tak aplikace napíše ať si do tašky nedám nic, což je správně, ale lepší by bylo kdyby aplikace rovnou napsala něco jako Vyndej si všechno z tašky, protože se zítra nejde do školy - je ředitelské volno.
Stačí jenom ve třídě SkolniTyden ověřit jestli první hod tag má nějaký text v tagu zkratka. Pokud ano, tak by to měl být volný den. Pokud budeš mít zájem toto implementovat, tak předem posílam obrázek kde můžeš krásně vidět cestu k tomu tagu, který je potřeba ověřit.

XML Cesta

kokolem commented 5 years ago

Není zbytečné si z tašky všechno vyndavat, když bych si jí druhý den stejně nikam nebral? Lepší by bylo, kdyby program zjistil, že zítra se nejde do školy a rovnou by ten den přeskočil. Uvedu na příkladu:

Pondělí: Normální den, příprava podle toho, co bylo v pátek. Úterý: Ředitelské volno, aplikace napíše, ať se dneska o tašku nezajímáš. Středa: Včera bylo ředitelské volno, takže příprava podle toho, co bylo v pondělí.

PS: Bohužel mě GitHub neupozornil na nový issue, všiml jsem si toho až teď - proto tak pozdní odpověď.

ejdrien commented 5 years ago

To je taktéž možnost, tohle je jenom něco co mne napadlo na místě. Ještě by se aplikace dala vylepším tím, že by se u předmětů nahradilo poslední písmenko např. a za u nebo e za i. Tím pádem by program vypsal např.: Do tasky si pridej: Fyziku, Biologii, Matematiku... místo Do tasky si pridej: Fyzika, Biologie, Matematika, .... Jakože neni to nutné, ale mne osobně to přijde takové přirozenější.

kokolem commented 5 years ago

To skloňování nebude tak jednoduchý. Ale našel jsem tohle. Na /slovo/... to vrací všechny pády požadovaného slova - nás zajímá 4. Nikde jsem k tomu ale nenašel API, takže by bylo potřeba parsovat HTML.

ejdrien commented 5 years ago

Parsovat tamtu stránku je zbytečnost a celkově na to používat jakékoliv API. Zkusil jsem si vyskloňovat několik předmětů z moji školy a celkově z předmětů jiných škol, co mi nabídl google, a pokud umím správně skloňovat, tak jsem došel k závěru, že je potřeba nahradit:

A na závěr menší ukázka vyskloňování několik předmětů dle výše uvedených pravidel:

EDIT Teď jsem si uvědomil, že některé školy mají někdy fakt hloupé názvy předmětů a také, že jsem zapomněl vzít v potaz více slovné předměty, protože jsem si neuvědomil, že je nutno vyskloňovat všechna slova. To udělat by nebylo zrovna dvakrát lehké udělat a celkově i ztráta času, protože pak se najde nějaká nová škola, která přijde ještě s geniálnějším názvem předmětu a celá aplikace se zhroutí, a proto bych na skloňování zapomněl a vyřešil jen ten den bez školy.
Jo a taky ta stránka, kterou jsi poslal se rozbije už jen s tímto předmětem Společenské vědy a filosofie

kokolem commented 5 years ago

Sklonuj.cz funguje jen, když to slovo dostane v prvním pádu jednotného čísla. Trochu jsem zkoumal a přišel jsem na tohle:

Když do seznam slovníku dáš nějaké slovo v jakémkoli pádě a čísle, převede ti ho na první pád jednotného čísla:

Ukázka převádění pomocí seznam slovníku

Pak je možné získat jeho pády pomocí sklonuj.cz. Ještě je potřeba se rozhodnout, jestli použít jednotné, nebo množné číslo. To lze tak, že pokud je původní tvar vědy v tabulce s pády jednotného čísla, použije se čtvrtý pád jednotného čísla a pokud je v tabulce s pády množného čísla, použije se čtvrtý pád množného čísla.

ejdrien commented 5 years ago

To je taktéž možnost, ale pořád to neřeší kompletně problém s více slovnými předměty, u těch by bylo třeba je rozložit na jednotlivá a pak poslat spousty requestů, takže co vlastně si má daný člověk připravit do tašky zjistí tak za půl hodiny a ještě k tomu ověřit jisté slova, třeba spojku a a tu neskloňovat přes sklonuj.cz, tedy pokud z ní necheme udělat u.

kokolem commented 5 years ago

Souhlasím. Takže závěr:

Pro skloňování přes sklonuj.cz a seznam slovník by bylo potřeba posílat spoustu requestů, takže by uživatel čekal zbytečně dlouho. A skloňování přímo ve skriptu by mělo příliš mnoho pravidel a stejně by se našla nějaká výjimka.

kokolem commented 5 years ago

Teď tedy k původnímu tématu:

Myslím, že by uživatel měl mít na výběr, jestli tašku v den volna vyprázdnil (tj. použil na něco jiného, někdo nosí do školy jen normální batoh), nebo jestli jsou v ní věci z předešlého dne a podle toho by mu program zobrazil, co si do ní přidat a vyndat.