Početak › Forumi › Linuks › Programiranje › Pomoc oko editovanja screenlet-a RSS
- This topic has 3 odgovora, 2 glasa, and was last updated 17 years, 10 months ranije by
sysctl.
-
AutorČlanci
-
9. avgust 2007. u 12:22 pm #8990
nucleuswizard
UčesnikPosto sam instalirao screenlets postavio sam i RSS ali RSS nece da menja vesti sam vec moram ici na desni klik pa onda izabrati next item.Pa je moje pitanje posto je napisan u python-u ciju sintaksu ne poznajem najbolje,koja je komanda da mi automatski ide na narednu vest na primer u periodu od 30 sec.???
Trenutno stojiif id==”prev_item”:
self.feed_number = self.feed_number + 1
self.refresh_feed()
if id==”next_item”:
self.feed_number = self.feed_number – 1
self.refresh_feed()Znaci kada ja otvorim meni i stisnem dugme Next Item on ide na next_item,a ja zelim da on to radi automatski
9. avgust 2007. u 6:18 pm #59291sysctl
UčesnikI ja koristim screenlets 😀 U svakom slucaju resio sam problem. Objasnjenje sledi. Znaci editujemo [tt]/usr/share/screenlets/Rss/RssScreenlet.py[/tt]. Prvo pronadji “konstruktor” znaci liniju sa [tt]def __init …[/tt] i na kraj metoda ispod [tt]self.update_interval = self.update_interval[/tt] dodaj sledece:
[code]
self.__timeout = gobject.timeout_add(5000, self.cycle_feeds)
self.save_feed_count=None
self.cycle_feeds()
[/code]pazi da lepo identujes (uvuces linije) jer je python osetljiv na whitespace/tab razmake, konkretno, poravnaj ih sa linijom iznad [tt]self.update_interval = self.update_interval[/tt]
Zatim je potrebno izmeniti get_feed metod, kao pretposlednju liniju dodaj ovo
[code]
self.save_feed_count = len(f[‘entries’])
[/code]odnosno citav get_feed metod bi trebalo da izgleda ovako
[code]def get_feed(self):
“””Get the summary and title of the selected feed”””
url = str(self.feed_url)
f = feedparser.parse(url)
#Get the summary of the newest item (0)
self.save_feed_count = len(f[‘entries’])
return f[‘entries’][self.feed_number][‘title’] + “nn” +
f[‘entries’][self.feed_number][‘summary’][/code]
i na kraju iznad [tt]if __name__ == “__main__”:[/tt] linije i komentara dodaj sledeci metod
[code]
def cycle_feeds(self):
if self.save_feed_count == None:
self.save_feed_count = self.feed_number
else:
if self.feed_number < 0:
self.feed_number = self.save_feed_countself.feed_number = self.feed_number – 1
self.refresh_feed()
return True[/code]
Ponovo pazi da dobro identujes kod, znaci blok koda [tt]def cycle_feeds(self):[/tt] mora biti poravnat po istoj osi sa prethodnom funkcijom [tt]def set_feed(self, name, url):[/tt]
Ako ne uspes da izvrsis izmene, posalji odgovor i dacu ti sadrzaj citavog fajla.
pozz 😀
9. avgust 2007. u 8:01 pm #59292nucleuswizard
UčesnikHvala ti puno,uspeo sam iz prve ali me zanima gde si naucio ovako python posto me mnogo zanima a i ovo sto si mi poslao bilo je samo copy-paste a bas bih zeleo da naucim 😎 😎 😎 😎 😎 😎 :biggrin: :biggrin: :biggrin: :biggrin: :biggrin: :biggrin: :biggrin: :biggrin: :biggrin: :biggrin: :biggrin: :biggrin:
10. avgust 2007. u 9:42 pm #59293sysctl
UčesnikPython sam naucio silom prilika. Prvo sam mislio da je to jos jedan “kiddie” skript jezik, ali sam se prevario. O kako sam se prevario. 😀 Necu vise da davim.
Najbolji resurs za ucenje je oficijelna python dokumentacija koja dolazi uz program. Kada se malo uhodas, potrazi Byte of python PDF. Moze se preuzeti besplatno sa sajta autora. Zatim Thinkin in python, a zatim u zavisnosti od interesovanja.
Da ne zaboravim i NASA koristi python. 😀 😀
-
AutorČlanci
Moraš biti prijavljen da bi postavio komentar u ovoj temi.