PythonでXMLの要素を抜き出す

XMLを解析し必要なデータ(URL、タイトル等)を集める
・検索をかけるページのデータを受信する(http)
・検索範囲を特定し検索を行う(文字コードに注意する)

おおまかに分けてこの3つをクリアする必要がある。
まずは、XMLの解析なのですが、ここでは単純なXMLを使ってタイトルとリンクを抜き出すまでをやってみます。
コードはダサダサなので、何かもっと良い方法があれば教えてください。(-人-)

[ Sample.xml ]



 
  <a class="keyword" href="http://d.hatena.ne.jp/keyword/%C4%AB%C6%FC%BF%B7%CA%B9">朝日新聞</a>の社会面
  http://www.asahi.com/national/list.html
 


  <a class="keyword" href="http://d.hatena.ne.jp/keyword/%C4%AB%C6%FC%BF%B7%CA%B9">朝日新聞</a>のスポーツ面
  http://www.asahi.com/sports/list.html
 

 
  <a class="keyword" href="http://d.hatena.ne.jp/keyword/%C4%AB%C6%FC%BF%B7%CA%B9">朝日新聞</a>の政治面
  http://www.asahi.com/politics/list.html
 

[ Sample.py ]

def testNode(node):
  titleNodes = node.getElementsByTagName('title')
  linkNodes = node.getElementsByTagName('link')
  if linkNodes.length == titleNodes.length:
   i=0
   while i < linkNodes.length:
    print titleNodes[i].firstChild.data + " : " + linkNodes[i].firstChild.data
    i+=1
  else:
   print "Error!"

if __name__ == '__main__':
 doc = minidom.parse('Sample.xml')
  testNode( doc )

[ 実行結果 ]

朝日新聞の社会面 : http://www.asahi.com/national/list.html
朝日新聞のスポーツ面 : http://www.asahi.com/sports/list.html
朝日新聞の政治面 : http://www.asahi.com/politics/list.html

とりあえず、データの抽出完了です^^。