url去重策略
1.将访问过的url保存在数据库中
2.将访问过的url保存在set中,只需要O(1)时间复杂度就可以查询到url,内存占用越来越大
3.url讲过MD5编码缩减到一定长度字符存在set中(scrapy使用这种方法)
4.bitmap,将访问过的url通过hash函数映射到某一位
5.bloomfilter方法对于bitmap进行改进,多重hash函数降低冲突
unicode与utf8编码
字符串编码
1.计算机只能处理数字,文本转换为数字才能处理,计算机8个bit作为一个字节,所以说一个字节表示最大的数字就是255 11111111
2.计算机是美国人发明的,所以一个字节可以表示所有字符,所以ASCII编码作为美国人的标准编码,ASCII可以表示任意的字符,但是中文无法表示
3.但是ASCII处理中文明显是不够的,中文不止255个字符,所以中国制定了GB2312编码,用两个字节一个汉字
4.unicode将所有语言统一到一套编码里面
5.如果是英文前面补0
6.乱码问题解决,但是内容全是英文,unicode编码比ASCII需要多一倍的存储空间,同时传输需要一倍的存储。
7.utf8出现了可变长的编码,但是对于内存来说utf8编码不是那么好处理
在内存中使用uniocode编码,传输时候使用utf8编码
本文探讨了URL去重的五种策略,包括数据库存储、集合利用、MD5编码、位图以及布隆过滤器。同时,深入介绍了字符编码从ASCII到Unicode和UTF-8的发展,以及在内存和传输中如何选择合适的编码方式,解决了乱码问题并权衡存储和传输效率。
806

被折叠的 条评论
为什么被折叠?



