【发布时间】:2011-02-04 14:07:29
【问题描述】:
我的问题是 ¿ 检测分层或树模式的最佳技术是什么?
我想识别 HTML 页面中的部分,例如:用户登录菜单,或导航菜单,或内容正文、页脚等。
我正在尝试使用我实现的语法识别(我不喜欢 Lex 和 yacc 这样的经典作品,因为他们不关心 HTML 数据意义)使用 php 并使用 DOM 解析器进行 HTML 遍历 (DOMDocument) .
我遇到了麻烦,因为在 html 中直观地表示数据的方式的可变性。例如,一个菜单可以用<ul><li><a href=#>Link1</a><li>Link2....</ul> 实现,但只有数百种可能性。它还取决于 css 事件(onclick、onmousehover)。而且从假菜单中识别真正的菜单也存在问题。
我在考虑神经训练,但在所有示例中,我发现它们适用于线性数据,而不是分层数据。我尝试训练一些网络,但很明显它们丢失了 DOM 树元素之间的关系信息。或者也许我不知道如何让它变得更好。
我的模式识别语法结果很差,因为它不接受 html 中可能的“意外”,也不平滑识别,它太严格(不模糊)。
¿有什么想法吗?
【问题讨论】:
标签: dom pattern-matching grammar neural-network parser-generator