vlambda博客
学习文章列表

flask框架编写api,生成token进行md5加密

flask是python一款简易的web框架,不仅可以制作网站,也可以做一下api接口,这次主要在seo的基础上,生成一个简单的关键词排名查询接口,可以为seo从业者查询关键词的排名。下面主要讲解一下初步的实现思路。


一、数据库方面


在数据库方面,用了flask中SQLAlchemy模块,创建数据表,并在数据表中创建需要的字段,这里创建了token字段和数量字段。


app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:123456@localhost:3306/seo_tool'app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = Truedb = SQLAlchemy(app)class Token(db.Model): __tablename__ = 'rank_token' key = db.Column(db.String(50),doc='查询的token值',primary_key=True) num = db.Column(db.Integer,doc='查询的次数',nullable=False,default=1000) def __init__(self,key,num): self.key = key self.num = num

二、md5加密


为了防止传入的token值会出现相同的情况,这里对token进行md5加密,这样相同token就不会出现,保证数据的唯一性。通过加盐和md5相结合,生成随机的token值


def add_salt(): key = 'danmoln' num = '123456789' str_1 = string.ascii_letters rand_code = random.sample(num+str_1,6) salt = ''.join(rand_code) token = get_md5(salt+key) return token
def get_md5(token): h = hashlib.md5() h.update(token.encode('utf-8')) return h.hexdigest()

传入数据时,就会在数据库中生成不一样的token值了



最后调用接口,就可以查询到关键词的排名数据




现在我做的接口还在测试中,后面运行稳定,就会开放给大家使用。而且最近我上线了一个简单的发卡系统,对前面的快排源码放入这个系统中了,需要购买的客户,可以扫支付宝进行购买,购买成功后会自动发送百度网盘资料。


点击下方阅读原文,获取源码!