我一直在使用nokogiri css一段时间,我希望能够在css选择器中使用ruby表达式插值,但它不起作用.这是我想要使用的代码:
doc = Nokogiri::HTML(open('http://www.somepage.com'))
keys=["BHiuG", "hUYtb4F", "jefHUY78i"]
keys.each do |k|
keyvalue = doc.css('span[class="#{k}"]').children
puts keyvalue
end
Run Code Online (Sandbox Code Playgroud)
有没有办法让类似的语法工作?
它与Nokogiri无关:问题是你使用单引号但Ruby中的字符串插值需要双引号.由于CSS选择器也允许单引号,我写道:
doc.css("span[class='#{k}']").children
Run Code Online (Sandbox Code Playgroud)