Я пытаюсь разобрать несколько файлов XML.Я использую Nokogiri, Ruby и XPath.Но не получить никакого результата.Что я делаю не так, было бы здорово за некоторые советы или примеры кода.
Пример XML-файла: xml-link
ЗДЕСЬ МОЙ РУБИНОВЫЙ СКРИПТ:
require 'rubygems'
require 'nokogiri'
require 'open-uri'
# parse the HTML document with all the links to the XML files.
doc = Nokogiri::HTML(open('link'))
# URLS - array
@urls = Array.new
#Get all XML-urls and save them in urls-array
doc.xpath('//a/@href').each do |links|
@urls << links.content
end
#LOCALITY array
@locality = Array.new
# loop all the url of the XML files
@urls.each do |url|
doc = Nokogiri::HTML(open(url))
# grab the content I want
doc.xpath('//educationprovider//vcard//adr/locality').each do |locality_node|
# store it in locality array
@locality << locality_node.content
end
# loop the the locality array and print it out
(0..@locality.length - 1).each do |index|
puts "LOCAL: #{@locality[index]}"
end
end
РЕДАКТИРОВАТЬ: Проблема была в выражении xpath.Правильное выражение было: // educationprovider // vcard // adr // locality