我想知道解析的内容与引入nokogiri块的正确方法:解析段落元素的含量与引入nokogiri
我有一些文件来分析,他们最初包含一个格式,其中每个主容器是<p>
。奇怪的是,每一个中的主要信息都被划分为<font>
标签。
有效的<p>
内容的股票样本包含以下,是一个典型的例子(有些有更多的内容,有的少了很多):
<p>
<font size="5" face="Arial, Helvetica, sans-serif" color="#00CCAA" class="">
<font color="#AAFF33" class="">
October 10, 1990 - Maybe a Title
</font>-
<font size="4" class="">
Some long text here.
<font color="#66CC00" class="">
<a href="SourceTitle/date.pdf">[Blah Blah, October 27, 1982 p. 2</a>
]
</font>.
More content.
<font color="#00FF33" class="">[Another Source, 1971, issue 01/4]
</font>.
</font>
<font size="5" face="Arial, Helvetica, sans-serif" color="#00CCAA" class="">
<font color="#AAFF33" class=""><font size="4" color="#00CCAA" class="">
Another fantastic article.
<a href="SourceTitle/Date.pdf">[Some Source, October 4, p.6]</a>
</font>
</font>
</font>
</font>
</p>
本质上的“字体大小”属性是什么套文章中的每个组件分开。要提取的要点是第一个<font size ="5"...
(即文章日期和主标题,如果有标题)标记,然后是实际内容。
目前我所有的段落块走出来:doc.xpath('//p').each do |node|
但是我不知道我是否应该再让它通过引入nokogiri分析出它的内容,或者我应该只是通过正则表达式运行它。我希望有一个小例子“正确地”这样做,我假设,在初始块内使用嵌入式xpath发现,将元素拉出。我认为有一种方法可以根据字体大小的分界拉出子组件,但我还没有看到这个具体的例子。
你能不能给你想要得到的目标文件的例子吗? – WarHog
不幸的是,我不能提供一个实际的数据示例,因为它是包含在内容中的私人信息。我已经在整个机构的上下文中提取了一些“行”信息供您查看:http://j.mp/qbpJnh – ylluminate
存在某种误解。我的意思是你想要得到的文档的例子 – WarHog