Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: RSS kanály na Wiki  (Přečteno 25998 krát)

Vojtěch Trefný

  • Příspěvků: 9307
  • Don Quijote
RSS kanály na Wiki
« kdy: 22 Března 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. 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á.

jmp

  • Host
Re:RSS kanály na Wiki
« Odpověď #1 kdy: 22 Března 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

Kamil Hanus

  • Aktivní člen
  • *
  • Příspěvků: 221
    • kamilhanus.cz
Re:RSS kanály na Wiki
« Odpověď #2 kdy: 22 Března 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.
Only wimps use tape backup: _real_ men just upload their important stuff on ftp, and let the rest of the world mirror it ;)

Vojtěch Trefný

  • Příspěvků: 9307
  • Don Quijote
Re:RSS kanály na Wiki
« Odpověď #3 kdy: 22 Března 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ší ;)

Kamil Hanus

  • Aktivní člen
  • *
  • Příspěvků: 221
    • kamilhanus.cz
Re:RSS kanály na Wiki
« Odpověď #4 kdy: 22 Března 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  ???
Only wimps use tape backup: _real_ men just upload their important stuff on ftp, and let the rest of the world mirror it ;)

Vojtěch Trefný

  • Příspěvků: 9307
  • Don Quijote
Re:RSS kanály na Wiki
« Odpověď #5 kdy: 22 Března 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í).

Vojtěch Trefný

  • Příspěvků: 9307
  • Don Quijote
Re:RSS kanály na Wiki
« Odpověď #6 kdy: 22 Března 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.

brabitom

Re:RSS kanály na Wiki
« Odpověď #7 kdy: 22 Března 2012, 23:17:50 »
Na G+ jsem ti vložil upravený soubor, vyzkoušej.

 

Provoz zaštiťuje spolek OpenAlt.