如何使用python实现字符串加密生成唯一固定长度字符串

  介绍

这篇文章主要介绍了如何使用python实现字符串加密生成唯一固定长度字符串,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。

<强>背景

有时候爬虫爬过的url需要进行指纹核对,比如Scrapy就是进行指纹核对,如果是指纹重复则不再爬取。当然在入库的时候我还是需要做一次核对,否则如果爬虫有漏掉,进入数据库就不合适了。

<强>思路

根据Scrapy的指纹生成方式,这次的指纹生成方式也是用散列的MD5对目标url进行加密,生成固定长度的字符串,然后在数据库里面将字段设置成独一无二的,这样的话在保证url固定长度的情况下还能够保证入库后的唯一性,进最大努力避免出现重复的数据。

<强>指纹生成代码

新建一个文件,然后在里面编写指纹生成的方法,在使用的时候从导入进来,调用方法即可。代码为:

import  hashlib   ,   def  get_md5 (url):   ,“““   ,由于散列不处理unicode编码的字符串(python3默认字符串是unicode)   所才能以这里判断是否字符串,如果是则进行转码   ,,初始化md5,将url进行加密,然后返回加密字串   ,“““   ,if  isinstance (url, str):   时间=url 才能;url.encode (“utf-8")=,,md  hashlib.md5 ()   ,md.update (url)   以前,return  md.hexdigest ()

为了验证代码的可用性,再加上代码:

if  __name__ ==,“__main__":=,urls “http://www.baidus.com"   ,打印(get_md5 (url)

在本地运行无误,再把下面这串删除。等到调用的时候从进口get_md5把文件和方法引入,就可以使用了

感谢你能够认真阅读完这篇文章,希望小编分享的“如何使用python实现字符串加密生成唯一固定长度字符串”这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

如何使用python实现字符串加密生成唯一固定长度字符串