Nokogiri :: HTML(open(url).read)和Nokogiri :: HTML(open(url))之间的区别是什么?

时间:2013-12-02 02:04:36

标签: html ruby nokogiri open-uri

我第一次与Nokogiri合作并搜索HTML文档。当我创建一个等于的变量(和print)时:

beteween Nokogiri::HTML(open(url).read)

它似乎输出与

完全相同的东西
beteween Nokogiri::HTML(open(url))

有区别吗?

我在文档中找不到答案,试图看看我是否能找出差异,但遇到了麻烦。

1 个答案:

答案 0 :(得分:7)

Nokogiri也很新,但也有一些经验。就Nokogiri而言,它以同样的方式处理你的两个例子。但是,open(url)open(url).read不同 - 前者返回Tempfile个对象,而后者返回String个对象。

Nokogiri就是为了让你的生活更轻松。 “You don’t need to read the file into a string variable. Nokogiri will do this for you.”所以,请保存一些按键并使用Nokogiri::HTML(open(url))