【发布时间】:2014-10-09 15:44:10
【问题描述】:
我正在尝试解析 URL 并以原始格式返回文本。
我正在使用这个 gem:https://github.com/cantino/ruby-readability
这是我所拥有的:
require 'rubygems'
require 'readability'
require 'open-uri'
source = open(@string).read
@text = Readability::Document.new(source).content
这只是给了我用于格式化的带有 html 标记的文本。
我试过了:
@text = Readability::Document.new(source, tags: []).content
这只是去除了 html 标签的文本。所有的文字都挤在了一起。我正在尝试获取文本并保留换行符和空格,而无需任何 html 标记。然后我试图使用文本在一些额外的算法下进行处理。我没有在任何视图中显示文本。如果我要在视图中显示文本,我只需调用 simple_format 助手。
例如此网址:http://blogs.discovermagazine.com/d-brief/2014/08/01/physicist-invents-color-changing-ice-cream/
我想将文本保存为未更改的格式:
@text = %Q[信不信由你,冰淇淋可以做得更好。 Manuel Linares 曾是一名物理学家,后来成为厨师,他发明了一种经典款待的变体,当你舔它时会改变颜色。 据 Phys.org 报道,这种名为 Xamaleón 的新奶油混合物——向“变色龙”致敬——在触及舌头时会从长春花变成粉红色,尝起来类似于“tutti-frutti”。冰淇淋的多彩技巧依赖于温度的变化和对人类口腔酸的反应。然而,Linares 并没有透露更多关于他的秘方的细节。 我们所知道的是冰淇淋是用草莓、香蕉、香草和杏仁等天然成分制成的。此外,Linares 在冰淇淋被舀出后会在冰淇淋上喷洒他所谓的“爱情灵药”,以帮助加速反应。在 Linares 为他的创作获得专利之前,我们可能不会知道 Xamaleón 背后的整个故事,该专利正在申请中。 “作为一名物理学家,我知道有多种可能性可能会奏效,当我设法破解它并创造出一种会变色的冰淇淋时,我很高兴,”Linares 说。 今年早些时候,Linares 在他的西班牙家乡布拉内斯开了一家冰淇淋店,并计划在未来推出更多异国风味的冰淇淋。接下来,他说:一种由秘鲁和非洲药用植物制成的冰淇淋,具有壮阳作用。]【问题讨论】:
-
定义“未改变的格式”。您是指没有应用任何 CSS 或 JavaScript 更改的格式吗?或者你的意思是它在 CSS 和 JavaScript 使用它之后的样子?保持空间通常很容易。保持换行可能非常困难,因为我们在网络浏览器格式页面中看到的换行可能是换行以外的其他原因。
-
我的意思是当您从网站复制并粘贴文本时的外观。我想这将是它在 CSS 和 JavaScript 操纵外观之后的样子。使用当前的解析器,如果您不去除 html 标记,然后将 simple_format 应用于文本,它会显示它在视图中呈现它的方式与原始文章中的完全相同。我正在尝试保存它并以与应用了 simple_format 的方式完全相同的方式对其进行处理。
标签: ruby-on-rails ruby nlp text-parsing