ruby - Add Nokogiri parse result to variable -
i have xml document:
<cred> <login>tove</login> <pass>jani</pass> </cred>
my code is:
require 'nokogiri' require 'selwet' context "parse xml" doc = nokogiri::xml(file.open("test.xml")) doc.xpath("cred/login").each |char_element| puts char_element.text end should "check" unit.go_to "http://www.ya.ru/" unit.click '.b-inline' unit.fill '[name="login"]', @login end
when run test get:
tove 0
but want insert parse result @login
. how can variables parsing result? need insert login
, pass
values xml fields in web page?
i'd use values:
require 'nokogiri' doc = nokogiri::xml(<<eot) <cred> <login>tove</login> <pass>jani</pass> </cred> eot login = doc.at('login').text # => "tove" pass = doc.at('pass').text # => "jani"
nokogiri makes easy access values using css, use readability when possible. same thing can done using xpath:
login = doc.at('//login').text # => "tove" pass = doc.at('//pass').text # => "jani"
but having add //
twice accomplish same thing wasted effort.
the important part at
, returns first occurrence of target. at
allows use either css or xpath, css less visually noisy.
Comments
Post a Comment