nokogiri: недействительный xpath? - PullRequest
0 голосов
/ 27 ноября 2009
 lotofxpath = arrayofmanyxpaths.map{|s| "\"" + s + "\""}.join(",")
 puts lotofxpath #=> "/html/body/a[1]", "/html/body/a[2]"

 newb = doc.xpath(lotofxpath).to_a

это не сработает, и жалуйтесь на неверный xpath.

однако, копирование вставки выходной строки

 newb = doc.xpath("/html/body/a[1]", "/html/body/a[2]").to_a

будет работать без проблем !!!

что здесь происходит?

1 Ответ

1 голос
/ 27 ноября 2009

В первом случае вы вызываете Нокогири следующим образом

newb = doc.xpath("\"/html/body/a[1]\", \"/html/body/a[2]\"").to_a

и это неправильный синтаксис Ruby для выполнения того, что вы пытаетесь сделать. Правильный путь -

newb = doc.xpath(*arrayofmanyxpaths).to_a
...