Fórum Ubuntu CZ/SK

Komunita => Ubuntu ČR => Wiki => Téma založeno: Vojtěch Trefný 22 Březen 2012, 19:54:25

Název: RSS kanály na Wiki
Přispěvatel: Vojtěch Trefný 22 Březen 2012, 19:54:25
Zdravím, do nového motivu na Wiki jsem také (již při jeho prvním nasazení) přidal výpis RSS kanálů stejně jako na Ubuntu.cz

Bohužel, jak se ukázalo, jsem to asi neudělal správně -- pokud v nějaké RSSce dojde k chybě (třeba chvilkový výpadek nebo já nevím co), tak to Wiki nerozdýchá a sletí proto, že toto RSS nedokáže načíst. Což by samozřejmě nemělo být.

Výpis RSS jsem řešil ručně pomocí feedparser (http://packages.python.org/feedparser/). V pythonu neprogramuji, znám jen základní syntaxi, takže jsem postupoval podle dokumentace a kromě základních funkcí nic neřešil.

Moje "řešení":

Kód: [Vybrat]
feed1 = feedparser.parse('http://www.linuxexpres.cz/rss/clanky')
Kód: [Vybrat]
<div class="footer-div">
                    <p class="footer-title">LinuxEXPRES.cz</p>
                    <ul><li><a href=" """,feed1.entries[0].link,u""" ">""",feed1.entries[0].title,u"""</a></li>
                        <li><a href=" """,feed1.entries[1].link,u""" ">""",feed1.entries[1].title,u"""</a></li>
                        <li><a href=" """,feed1.entries[2].link,u""" ">""",feed1.entries[2].title,u"""</a></li>
                        <li class="footerlast" ><a href="http://www.linuxexpres.cz/rss/clanky">další</a></li>

Pokud někdo ví, co jsem provedl špatně, resp. ví, jak zajistit, aby v případě výpadku RSSky nespadla Wikina, budu jen rád, když pomůže.

Aktuálně jsou na Wiki všechna RSSka smazaná.
Název: Re:RSS kanály na Wiki
Přispěvatel: jmp 22 Březen 2012, 20:37:26
python jsem jeste nepotkal (a jelikoz neprogramuji, tak asi ani nepotkam), ale zda se, ze neni osetreny vstup...

pokud se nepovede rss feed vubec nacist, tak to nedopadne dobre (pri neuspechu radeji nic nevypisovat)
pokud bude ve feedu mene nez tri polozky, tak to opet nedopadne dobre (vypsat jen tu jednu ci dve polozky a nepokouset se o vypis treti, ci druhe a treti, kdyz neexistuji)

mozna trochu pomuze tohle:
http://stackoverflow.com/questions/4530685/how-to-make-universal-feed-parser-only-parse-feeds (http://stackoverflow.com/questions/4530685/how-to-make-universal-feed-parser-only-parse-feeds)
Název: Re:RSS kanály na Wiki
Přispěvatel: Kamil Hanus 22 Březen 2012, 20:40:20
Mozna trochu prasarna, ale hodil bych tam try a zkousel jaka bude hodnota z parseru. Pokud by byla nejaka nestandardni, nechal bych starou. Rad bych pomohl, ale mam zakladovku na reklamaci a v mobilu si pythoni kod neozkousim.
Název: Re:RSS kanály na Wiki
Přispěvatel: Vojtěch Trefný 22 Březen 2012, 21:13:12
Samozřejmě vím, že by se mělo ověřovat, jestli ten feed existuje (i když bych tak trochu očekával, že si to feedparser nějak ošetří sám), ale nejsem schopný to v rozumném čase naprogramovat (ne, nechce se mi učit python), takže spíš hledám někoho kdo to "nějak" vyřeší ;)
Název: Re:RSS kanály na Wiki
Přispěvatel: Kamil Hanus 22 Březen 2012, 21:46:51
Když to počká do neděle, klidně bych se na to podíval. Ale určitě se tu na forum najde někdo, kdo to stihne ještě dneska  ???
Název: Re:RSS kanály na Wiki
Přispěvatel: Vojtěch Trefný 22 Březen 2012, 21:54:51
Klidně to počká. Aktuálně je to vyřešené tím, že tam ty RSSka nejsou (a to zas tolik nevadí).
Název: Re:RSS kanály na Wiki
Přispěvatel: Vojtěch Trefný 22 Březen 2012, 22:38:33
Na G+ jsem byl požádán o celý kód, tak přihazuji i sem:

http://disk.jabbim.cz/vojtech.trefny@jabber.cz/dark.py

Samotné RSS je přibližně na řádích 197 až po 250.
Název: Re:RSS kanály na Wiki
Přispěvatel: brabitom 22 Březen 2012, 23:17:50
Na G+ jsem ti vložil upravený soubor, vyzkoušej.