
本次升级带来了重要的改进:
1. 相较于之前的模板结构,本次升级使其更为复杂。针对以往存在的容器包含关系的DOM结构,曾出现数据错位的问题。本次升级主要针对树形结构的模板进行设计与解析。我构建了一个网页结构示例,并对其进行了详细解析。
此页面是为了采集数据
2. 模板管理模块也进行了更新,采用新的树形结构管理方式维护模板。
模板管理界面左侧以树形结构展示网页元素的包含关系,解析结果则呈现在右侧的二维表格中。
数据对照表
左侧树形结构展示了省、市、区及景点的包含关系,解析后的结果是一个二维表格,包含了省、市、区及景点的信息。
该解析算法的一大优势在于,原本树形结构的网页元素数量可能不尽相同,按常规DOM元素获取的数据也难以对齐。例如,同一省份可能对应多个城市,而一个城市又可能包含多个区,形成了1:n:m的情况,难以以二维表的形式展现。通过我们的算法进行数据对齐和扁平化处理,得到了右侧表格中的数据。
节点编辑-XPath
节点编辑-CSS
在节点表格中,双击可进入节点编辑模式,在此设置节点的选择器规则。确定后,进行测试以验证选择器的准确性。如果设置错误,解析结果中将不会显示这一列数据,如下图所示。
尽管这个版本的解析器在解析复杂网页结构和数据对齐方面表现出色,但仍然存在一些不足。
虽然能够解析复杂的网页结构并获取整齐的数据,但解析器的通用性受到一定影响,无法解析上一版本中简单的页面结构。
我们期待在下一版本中进行进一步优化。创作过程中遇到了许多挑战,我们真诚地希望感兴趣的朋友能为我们提出宝贵的建议和设计思路,共同推动软件的发展。
