2011-10-28 11 views
0

パスが同じ名前の文書があります。例:Rails:同じパス名のXML文書を解析する

xml_doc = Nokogiri::XML(response.body) 
    photo = xml_doc.xpath('person').xpath('photos').xpath('photo').xpath('url').inner_text 

複数の写真が返されます(すべての写真のパス名が同じであるため)。

ノコギリに最初のものを返すには、どうすればいいですか?または内部に文字列を持つもの?

xml_doc.at_css('person photos photo url') 
# just css will return all, just like xpath 
xml_doc.css('person photos photo url') 

は個人的に、私はcssat_cssはるかに直感的で使いやすくを見つける:

おかげ

答えて

0
xml_doc.xpath('person/photos/photo/url')[0] 

または

xml_doc.xpath('person/photos/photo/url[not(text()="")]')[0] 
0

はまたat_cssメソッドを使用することができます。

関連する問題