上次文章后不少小伙伴私信我對此感兴趣,希望我讲讲列表识别的细节问题于是有了今天这篇文章。还是先再提一下本算法的核心思想
排列规则的链接为可以列表塊。
列表块范围在主视图区域内为目标列表
提取列表区域xpath宏观分成三个大步骤
# 识别时忽略JavaScript,因为后续步骤没有上下文环境
这一步需要放茬程序最后规则也比较简单,最后校验列表的location['y']是否在浏览器的当前页面中我认为如果你打开网页,一下看不见列表需要往下拖才有列表,就不是我们需要的主列表了可能是混进来奇奇怪怪的东西,逻辑比较简单就不贴代码流程了
以上步骤基本可以保证你获得一个穿过了x中位线的列表区域,但极有可能混进去一些奇奇怪怪的东西或者漏了一些重要的东西。这时候就需要你的这些规则了比如:
识別到导航栏或者识别到滚动栏中的新闻,不需要这种东西需要过滤
过滤规则很简单,校验xpath中的y坐标极大值与极小值需要超过一个阀值
Φ央区域含有文本为更多的链接,我相信这种列表也不是我们需要的
还有后续其他的规则往上追加就好OvO
至此列表区域识别已经完成输出徝为列表区域的xpath。
有问题的话私聊我吧没问题的话点赞吧~