# -*- coding: cp1252 -*-
#rss-lukija pythonilla toteutettuna
import urllib2
import sys
class Rss:
def __init__(self):
self.otsikko = []
self.artikkeli = []
self.linkki = []
self.teksti = ""
self.osoite = "http://www.ampparit.com/xml.php"
def hae(self):
for rivi in urllib2.urlopen(self.osoite):
self.teksti = self.teksti + rivi
def otsikot(self):
#muodostetaan lähdekoodista lista, jossa erottimena toimii
teksti2 = self.teksti.split("")
#poistetaan listan ensimmäinen solu, johon kuuluu kaikki merkit ennen ensimmäistä kohtaa
del teksti2[0]
for i in range(len(teksti2)):
vara = teksti2[i] #tallennetaan listan solu string muuttujaan, jotta saadaan käyttöön string muuttujan funktiot
loppu = vara.find("<") #nyt otsikko on muotoa: tekstiä, joten etsimme tagin aloitus kohdan
self.otsikko.append(vara[:loppu]) #lisätään otsikko josta tagi on suodatettu listaan
def artikkelit(self):
#muodostetaan lähdekoodista lista, jossa erottimena toimii
teksti2 = self.teksti.split("")
#poistetaan listan ensimmäinen solu, johon kuuluu kaikki merkit ennen ensimmäistä kohtaa
del teksti2[0]
for i in range(len(teksti2)):
vara = teksti2[i] #tallennetaan listan solu string muuttujaan, jotta saadaan käyttöön string muuttujan funktiot
kolmas = vara.find("<") #nyt otsikko on muotoa: tekstiä, joten etsimme tagin aloitus kohdan
self.artikkeli.append(vara[:kolmas]) #lisätään otsikko josta tagi on suodatettu listaan
def linkit(self):
#muodostetaan lähdekoodista lista, jossa erottimena toimii
teksti2 = self.teksti.split("")
#poistetaan listan ensimmäinen solu, johon kuuluu kaikki merkit ennen ensimmäistä kohtaa
del teksti2[0]
for i in range(len(teksti2)):
vara = teksti2[i] #tallennetaan listan solu string muuttujaan, jotta saadaan käyttöön string muuttujan funktiot
kolmas = vara.find("<") #nyt otsikko on muotoa: tekstiä, joten etsimme tagin aloitus kohdan
self.linkki.append(vara[:kolmas]) #lisätään otsikko josta tagi on suodatettu listaan
def haeOtsikot(self):
return self.otsikko
def tulostaOtsikot(self):
luku = 0
for i in self.otsikko:
print str(luku) + ". " + i
luku = luku + 1
def haeArtikkeli(self):
print self.artikkeli[2]
def haeLinkki(self,i):
return self.linkki[i]
def vaihdaUrl(self, urli):
self.osoite = urli
print self.osoite
rss = Rss()
if len(sys.argv) > 1:
if sys.argv[1] == "-u":
rss.vaihdaUrl(sys.argv[1])
rss.hae()
rss.otsikot()
rss.artikkelit()
rss.linkit()
rss.tulostaOtsikot()
#switch-case tähän!
if len(sys.argv) > 1:
if sys.argv[1] == "-u":
rss.vaihdaUrl(sys.argv[1])
if sys.argv[1] == "-a":
rss.haeArtikkeli()