2014-09-30 50 views
0

我有一個html文件,看起來像這樣使用引入nokogiri如何使用引入nokogiri :: XML ::文本錯誤的參數數目

<html> 
    <head> 
    <title><* page.title *></title> 
    </head> 
    <body> 
    <h1>h<* recipe.name *></h1> 
    <* EACH recipes recipe *> 
     <* food.name *> 
     <* EACH recipe.nicknames nickname *> 
     <p><* things to be replaced *></p> 
     <* ENDEACH *> 
    <* ENDEACH *> 
    </body> 
</html> 

我有一個JSON文件更改節點的文本值。我正在使用json ruby library來解析它,並將它作爲一個散列回來。我需要使用這些鍵並將值插入到這個html文件中。

到目前爲止,我的Ruby腳本看起來像這樣

require 'rubygems' 
require 'nokogiri' 
require 'json' 

data = File.read("data.json") 
obj = JSON.parse(data) 

puts obj.values 

page = Nokogiri::HTML(open("somethingtemplate")) 

# base = Nokogiri::XML::Node.new 
# base["href"] = "http://google.com" 

# page.xpath('//body/h1').each do |node| 
# node.add_child(base) 
# puts child.text 
# end 

builder = Nokogiri::XML::Text.new do page 
    page.body { 
    page.h1 
    page.text "hello world" 
    } 
end 

puts builder.doc 

我在這裏看到了別人的例子 - >Insert Text After Specific XML Tag in Nokogiri

我收到此錯誤

`new': wrong number of arguments (0 for 2+) (ArgumentError) 

的文檔沒有例子,它不適合我。

回答