有人可以推荐使用Ruby库来创建给定URL的摘要吗?我想到的是在搜索引擎结果中看到的那种一句话或两句话的摘要。
答案 0 :(得分:1)
您可以在网页上抓取描述元标记,或者如果页面上第一个<p>
元素的前几句话不可用。描述元标记如下所示:
<meta name="description" content="Nokogiri (鋸) is an HTML, XML, SAX, and Reader parser with XPath and CSS selector support." />
有几个用于解析HTML的Ruby库。我听说Nokogiri对这类东西有好处,但我个人没有经验。
答案 1 :(得分:0)
抓住网站并抓取网页很容易。总结一个页面很困难。
元标记可以帮助一点,因为摘要和内容之间应该存在直接关联。
不幸的是,并非所有页面都有它们,而且许多页面都不准确。这让我们不得不翻阅文本,希望它与内容和背景相关。页面布局各不相同,并且没有标准说明主页内容实际位于页面的哪个位置,并且由于CSS和Ajax,它可能不是我们期望它的位置,在前几行文本中。可能没有<p>
个标记,因为具有相应CSS的<div>
或<span>
可以替换外观。
我写了许多蜘蛛,对页面进行了上下文分析,试图总结,而且它很丑陋而且没有防弹,特别是在处理英语时,因为同音异义词,同义词和其他“nyms”在路上。
如果您可以找到要汇总的文字,那么可以使用不错的工具将几个段落或纸张缩小为一个简短的句子。 Mac OS附带一个摘要,并且已有多年。 “Summarize Text Using Mac OSX Summarize Or Microsoft Word AutoSummarize”谈到启用它,如果你想进行实验。 “Mac 101: Shorten text using the Summarize Service”是关于在Mac上使用它。有一个可以从CLI调用的驱动程序或应用程序。有关详细信息,请参阅“How to use Mac OS X's Summary Service on the command line?”。
而且,作为演示,这里的Lincoln's Gettysburg address汇总为一行:
我们在这里致力于完成我们面前的伟大任务 - 从这些光荣的死者中我们更加投入到他们给予最后一次全力投入的事业 - 我们在这里高度解决这些问题死了也不会白白死去 - 这个国家,在上帝之下,将有一个新的自由诞生 - 人民,人民,为人民的政府不会从地球上灭亡。