先前在《爬虫系列之数据质量监控(二):监控系统设计 》一文中,对采集中数据解析部分可能出现的各种异常,进行了大概的总结。比如:标题或内容中包含乱码、css样式、JavaScript代码等。
由于出现的异常可能千奇百怪,我们不可能提前想到所有现象。此时,就需要根据目前已经发现的问题,总结出一套能够灵活应对不同情况的规则库。
其目的就是在数据持久化接口处,对接收的所有数据,依据信源系统中配置的规则进行校验,以判断采集到的数据的准确性,便与改进采集器或脚本,优化数据质量,提高产品的用户体验。
通过对《爬虫系列之数据质量监控(二):监控系统设计》 中描述的各类规则进行抽象,大致可以总结出以下规则。
如下表所示:
序号 分类 规则细则 1 校验规则 A字段值长度小于阀值A 2 校验规则 A字段的值是否包含CSS样式 3 校验规则 A字段的值是否有乱码 4 校验规则 A字段值中汉字长度小于阀值A 5 校验规则 A字段值是否符合yyyy-MM-dd HH:mm:ss时间格式 6 校验规则 A字段值等于阀值A 7 校验规则 A字段值大于阀值A 8 校验规则 A字段值长度大于阀值A 9 校验规则 A字段值长度等于阀值A 10 校验规则 A字段的值是否包含JavaScript代码 11 校验规则 A字段值与字段B值相同 12 校验规则 A字段值包括规则库中配置阀值,或包括接口配置阀值A 13 校验规则 A字段值以规则库中配置阀值结尾,或以接口中阀值A结尾 14 校验规则 A字段值是否包含日期 15 清洗规则 A字段值内容格式化 16 清洗规则 A字段值包含阀值A时,则删除A字段值中阀