выпуск котировок (ruby)

есть идеи, как я могу передать правильный аргумент в xpath? Должно быть что-то о том, как использовать одинарные/двойные кавычки. Когда я использую переменную

parser_xpath_identificator = "'//table/tbody[@id=\"threadbits_forum_251\"]/tr'" дает мне неверное значение или

parser_xpath_identificator = "'//table/tbody[@id="threadbits_forum_251"]/tr'" выдает ошибку синтаксическая ошибка, неожиданный tIDENTIFIER, ожидается $end

require 'rubygems'
require 'mechanize'

parser_xpath_identificator = "'//table/tbody[@id=\"threadbits_forum_251\"]/tr'"
#   parser_xpath_identificator = "'//table/tbody[@id="threadbits_forum_251"]/tr'"
    #gives an error: syntax error, unexpected tIDENTIFIER, expecting $end

agent = WWW::Mechanize.new
page = agent.get("http://www.vbulletin.org/forum/index.php")
page = page.link_with(:text=>'vB4 General Discussions').click
puts "Page title: #{page.title}"
puts "\nfrom variable: #{page.parser.xpath(parser_xpath_identificator).length}"
puts "directly: #{page.parser.xpath('//table/tbody[@id="threadbits_forum_251"]/tr').length}"

person Radek    schedule 27.01.2010    source источник


Ответы (1)


В обоих случаях вы вкладываете одинарные кавычки непосредственно в двойные кавычки, что я считаю неправильным. Попробуй это:

parser_xpath_identificator = '//table/tbody[@id="threadbits_forum_251"]/tr'
person Jordan Running    schedule 27.01.2010
comment
@Jordan: спасибо за правильный ответ и ваш комментарий. Теперь я вижу, что первые двойные кавычки были вообще не нужны... - person Radek; 27.01.2010