如果我有来自该地址的XML,我将如何循环通过search/events/event
事件?我的意思是循环浏览event
项目并将其详细信息打印到屏幕上?到目前为止,我有以下代码:
get_xml('/events/search', :location => 'London, United Kingdom', :date => 'Today').at('events')
get_xml
是从上面的链接中获取XML并选择events
节点的方法。如何循环遍历events
节点中的项目?
你能试试这个吗
require 'rubygems'
require 'net/http'
require 'rexml/document'
# Web search for
url = 'http://api.eventful.com/rest/events/search?app_key=PbFVZfjTXJQWrnJp&location=London&date=Today'
# get the XML data as a string
xml_data = Net::HTTP.get_response(URI.parse(url)).body
# extract event information
doc = REXML::Document.new(xml_data)
doc.elements.each('search/events/event/title') do |ele|
titles = ele.text
p titles
end
输出:
C:UsersvinothiniDesktop>ruby sample_nokogiri.rb
"The Ladykillers"
"The 39 Steps"
"Wotever Sex 6 August"
"Phoenix Fringe"
"The Lion King"
"One Man, Two Guvnors"
"Tutorfair event 6th Aug"
"Thriller - Live"
"The Color Purple"
"Summer School Mid-Term Party"
我对你的要求理解正确吗?