【发布时间】:2010-12-03 19:46:12
【问题描述】:
我在 Rails 中遇到了一个关于 Nokogiri 的奇怪问题。我正在尝试删除带有“为什么”类的“p”标签。我有以下代码,但不起作用:
def test_grab
f = File.open("public/test.html")
@doc = Nokogiri::HTML.parse(f)
f.close
@doc = @doc.css("p")
@doc.each do |p|
if p["class"] == "why"
logger.info p.values
p.remove
end
end
end
test.html:
<html>
<head>
<title>Test</title>
</head>
<body>
<p>Test data</p>
<p>More <a href="http://stackoverflow.com">Test Data</a></p>
<p class="why">Why is this still here?</p>
</body>
</html>
输出html源代码:
<p>Test data</p>
<p>More <a href="http://stackoverflow.com">Test Data</a></p>
<p class="why">Why is this still here?</p>
我知道 rails 代码将进入 if 循环,因为 logger.info 显示在服务器终端上。
有什么想法吗?
【问题讨论】:
-
对_why的隐藏引用? :D :D