2012-02-09 11 views
0

私のlast questionでは、RSSフィードのXMLからのリンクを解析する際に助けを求めました。ここでは、余分な研究との組み合わせで、私は援助から受信したアイデアを使用して、私はこれを書くことができた:私は他の質問で述べたようにPython出力から一行を取得する

def GetRSS(RSSurl): 
    url_info = urllib.urlopen(RSSurl) 
    if (url_info): 
     xmldoc = minidom.parse(url_info) 
    if (xmldoc): 
     channel = xmldoc.getElementsByTagName('channel') 
     for node in channel: 
      item = xmldoc.getElementsByTagName('item') 
      for node in item: 
       alist = xmldoc.getElementsByTagName('link') 
       for a in alist: 
        linktext = a.firstChild.data 
        print linktext 

、私はRSS feed on Redlettermedia.comからのリンクを得るためにこれを書きました。コードは正常に動作し、受け取る出力は次のようになります。

http://redlettermedia.com 
http://redlettermedia.com/half-in-the-bag-b-fest-2012/ 
http://redlettermedia.com/an-update-from-red-letter-media/ 
http://redlettermedia.com/half-in-the-bag-red-tails/ 
http://redlettermedia.com/half-in-the-bag-the-devil-inside-and-flyin-ryan/ 
http://redlettermedia.com/newly-found-episode-iii-review-behind-the-scenes-footage/ 
http://redlettermedia.com/half-in-the-bag-the-girl-with-the-dragon-tattoo-and-2011-re-cap/ 
http://redlettermedia.com/mr-plinetts-indiana-jones-and-the-kingdom-of-the-crystal-skull-review/ 
http://redlettermedia.com/new-mr-plinkett-review-trailer/ 
http://redlettermedia.com/plinkett-fest/ 
http://redlettermedia.com/update/ 
http://redlettermedia.com 
http://redlettermedia.com/half-in-the-bag-b-fest-2012/ 
http://redlettermedia.com/an-update-from-red-letter-media/ 
http://redlettermedia.com/half-in-the-bag-red-tails/ 
http://redlettermedia.com/half-in-the-bag-the-devil-inside-and-flyin-ryan/ 
http://redlettermedia.com/newly-found-episode-iii-review-behind-the-scenes-footage/ 

などです。私が今したいのは、関数の結果として出力される最新の更新リンクだけを出力することです(この場合、出力の2行目は "http://redlettermedia.com/half-in-the-bag-b-fest-2012/"です)。その行だけをどのように印刷しますか?

+0

はあなたが非STDLIBモジュールをインストールすることはでき試みることができるリストの2番目の項目のですか?あなたは '最新の更新リンク 'をどのように定義しますか? – Daenyth

答えて

1

それは常にあなたが

url = xmldoc.getElementsByTagName('link')[1].firstChild.data 
print url 
+0

これはかなり完璧に機能しますが、私が取得しようとしていたURLを繰り返して10行が表示されます。私が一度だけ望んでいたURLを受け取るのとは対照的に、私はそれを引き起こすために何をしていますか? – Jordan

+0

これは、リストのすべての項目に対して印刷しているためです。あなたはおそらく、 'item in node:'の後にあるものを私の提案と置き換えることになるでしょうが、現時点ではテストすることができません。 – timc

+0

それは私が実際にやるべきことだと分かりました。私は '' item in: 'の下のものをあなたが示唆したものに完全に置き換えましたが、何らかの理由で10行が残っているようです。 – Jordan