【原创】使用python写一个redis和mysql的简单交互验证登陆(纯手打,不足请见谅!)

Python定时从Mysql提取数据存入Redis的实现 主要介绍了Python定时从Mysql提取数据存入Redis的实现,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 立即下载

简介

使用python写一个简单的redis和MySQL的验证登陆,我们要达到的目的有以下几种:     
  1. 在MySQL中创建用户表,有用户名和密码字段
  2. 让用户输入用户名和密码进行登录,如果用户名和密码在表中存在则登录成功,否则输出登录失败
  3. 如果登录成功,则将登录信息缓存在redis中
  4. 以后用户的每次登录,都首先查询redis中是否有缓存
  5. 如果有就直接登录
  6. 如果没有就查询MySQL,用户则存在就将该用户信息缓存到redis
注意,MySQL中我选择了我的batabase为user,要拿走代码使用需要把表改成你自己库里的表名。
注意,redis中我选择了是我的默认db0 根据不同的库自行选择哦

#首先导入这两个库
import pymysql
import redis


#获取并封装MySQL验证功能
def Mysql():
    conn = pymysql.connect(host='localhost', user='root', password='123456', database='user', port=3306, charset='utf8')
    cursor = conn.cursor()
    affected = cursor.execute("select * from username where account = '%s' and password = '%s'" % (user, password))
    if affected == 1:
        print('登陆成功!')
        conn.close()
        return 1
    else:
        print('输入错误,请核实账号或者密码是否正确!')
        conn.close()
        return 0

#获取到MySQL验证结果,验证成功便写入ridis
def xieru():
    n = Mysql()
    if n == 0:
        pass
    else:
        Redis.set(user,password)

#获取输入的账号
user = input('输入您的账号')

#获取输入的密码
password = input('输入您的密码')

#获取redis库
Redis = redis.StrictRedis(
    host='localhost',
    port=6379,
    password='123456',
    db=0
)

#验证输入的账号是否存在redis键中,存在返回True,不存在返回False
User = Redis.exists(user)

#验证输入的账号是否存在ridis键中,存在返回值,不存在返回None
Password =Redis.get(user)


#判断 首先账号存在,并且值等于输入的密码,并且调用封装了获取到MySQL验证结果,验证成功便写入ridis的函数,一键搞定
if User == True and password == Password.decode() :
    print('恭喜您登陆成功!')
else:
    xieru()

VisionMaster -Group循环、数组数据格式化 这里创建一个格式化工具,按照自己想要的模式格式化刚刚输出的数据。因为是检测多个物体,所以这里选择输出的是数组。第一次的模板很不满意,反复调整参数也没好,边缘不整齐,强迫症患者受不了。实测如果输入设置太多,会导致模块失效,所以尽量选择需要的少量参数。这里要打开循环使能,循环数值就是高精度匹配的匹配个数。Group输出设置里选择刚刚建立的数据集。左边是主流程,右边是组合模块内部流程。修改采图这里的曝光值,图像提亮一点。建一个数据集,把想要的数据收集起来。用TCP助手测试一下OK。成功得到了想要的数据。 阅读详情

相关推荐

python爬取淘宝数据

python爬取淘宝数据淘宝评论 淘宝评论 打开淘宝,选择打开需要爬取的商品的评论。在谷歌浏览器选择开发者工具,选择network,找到list_detail_rate.htm?itemId=624466733121,点击headers、previews,可以看见相应的评论数据。 爬取一页屏评论代码如下 import re import requests headers = { 'Referer': '在headers中', 'User-Agent': '在

qq_36333776的博客 5799

redis/mysql/python的交互运作

【代码】redis/mysql/python的交互运作。

晦涩难董先生 400

手把手教你校准垂起固定翼(VTOL)遥控器与电调:从零到飞的完整流程

本文详细介绍了垂起固定翼(VTOL)遥控器与电调的校准流程,从基础认知到飞行前检查,涵盖遥控器通道配置、电调校准、舵机方向调整等关键步骤。通过图文并茂的指导,帮助无人机爱好者安全完成VTOL调试,确保首飞成功。特别强调多旋翼模式、过渡模式和固定翼模式的设置要点,适合新手和进阶用户参考。

jenkins8butler的博客 359

Python实现Redis缓存MySQL数据并支持数据同步

本文讲讲如何用Redis做MySQL的读缓存,提升数据库访问性能。MySQL是一种很常用的关系型数据库,用于持久化数据,并存放在磁盘上。但如果有大数据量的读写,靠MySQL单点就会捉襟见肘,尽管可以在MySQL本身做优化,比如用更好的SQL语句设计、索引等等。也会用主从设计集群设计来优化性能。甚至借助工具做成分布式数据库。不过还有一种简单的方式来提升读性能,就是在MySQL的前面放一个缓存,比如Redis。Redis是一种高性能的内存数据库,用作缓存非常合适。Redis还支持分布式集群,来优化读写性能。

不二的AI笔记 1377

从信号到振镜:STM32F103 + XY2-100协议 + AM26LS31芯片的激光打标/雕刻系统信号链搭建指南

本文详细介绍了基于STM32F103微控制器和XY2-100协议的激光打标/雕刻系统信号链搭建方法。从数字振镜控制协议解析、AM26LS31差分驱动电路设计到信号完整性优化,提供了一套完整的解决方案,帮助工程师实现高精度激光控制系统的开发与调试。

weixin_42536058的博客 237

QT实现HTTP文件(夹)下载的完整流程与实战技巧

本文详细介绍了使用QT框架实现HTTP文件和文件夹下载的完整流程与实战技巧。通过QNetworkAccessManager等核心类,讲解了从单文件下载、大文件处理、进度显示、暂停/取消功能,到复杂的文件夹下载策略。文章重点剖析了断点续传、错误处理与网络健壮性等关键问题,为C++桌面应用集成稳定高效的下载功能提供了专业指导。

weixin_29239279的博客 280

python3-mysql、redis数据库连接

使用redis模块连接Redis服务器需要提供服务器的IP地址和端口号。如果Redis服务器没有密码验证,则可以直接使用redis模块提供的Redis类进行连接;如果Redis服务器开启了密码验证,则需要使用redis模块提供的StrictRedis类,并提供密码参数。员工表有 FIRST_NAME VARCHAR(20),LAST_NAME VARCHAR(20),AGE INT,SEX VARCHAR(1),INCOME FLOAT字段。redis模块提供了对应的类和方法,可以方便地操作这些数据类型。

qq_44864681的博客 501

搭建 Newman + Postman + Git + Jenkins 环境教程

一步步搭建 Newman、Postman、Git 和 Jenkins 的环境。这些工具常用来做 API 测试和 CI/CD 自动化,尤其是 Postman 和 Newman 搭配 Git 和 Jenkins,能实现 API 集合的版本管理和自动测试。

Criss@陈磊 436

基于python的MySQL和redis数据同步实现(redis做缓存)

一、背景原理 1、MySQL数据库 MySQL是一种关系型数据库,主要用于存放持久化数据,将数据存储在硬盘中,读取速度较慢。每次请求访问数据库时,都存在着I/O操作,如果反复频繁的访问数据库:会在反复链接数据库上花费大量时间,从而导致运行效率过慢;反复的访问数据库也会导致数据库的负载过高。所以,针对MySQL的缺点,衍生出了缓存的概念。 2、redis数据库 redis是一款非关系型数据库,是一种缓存数据库,数据存放在内存中,用于存储使用频繁的数据,这样减少访问数据库的次数,提高运行效率。所以red

北风 6636

(四)C++自制植物大战僵尸游戏启动流程

鼠标左键单机VS2022上方工具栏中进行项目启动。第一次启动项目需要编译项目中所有代码文件,编译生成需要一定的时间。不同性能的电脑需要消耗的时间差别可能较大,通常在几分钟到几十分钟之间。编译成功后会自动启动运行游戏。qi编译成功后自动启动运行游戏如下图。

尔灵尔亿的博客 2467

[RK3568 Android11] 开发之默认授予系统预置的APP权限

目录 一、系统预置的APP权限 二、默认授予系统预置的APP权限 一、系统预置的APP权限 1、在打开系统预置的APP时,都会弹窗提示,并且需要人工确定授予权限; 2、有些客户对定制有需求,需要系统预置的APP自动默认授予权限; 二、默认授予系统预置的APP权限 注意此方法只对系统预置的APP起效果,后期手动安装的APP无效; 修改文件: frameworks/base/services/core/java/com/android/server/pm/per...

~未来可期~ 5059

Python操作数据库案例mysql, redis, mongodb, neo4j

本文旨在为读者提供一个全面的指导,介绍如何使用Python进行MySQL、Redis、MongoDB和Neo4j这四种主流数据库的基础操作。文章从各数据库对应的Python库的安装入手,进而深入探讨了基础的增删改查(CRUD)操作。需要强调的是,本文所展示的代码示例仅作为基础参考,对于更为复杂和高级的操作,建议读者进一步参阅官方文档以获取更全面和深入的了解。无论您是数据科学家、后端开发者或是对数据库有兴趣的技术爱好者,本文都将为您提供实用的操作指导和专业建议。

m0_51661400的博客 590

AI测试干货:让大语言模型稳定输出 JSON 的四种实现方案

用大语言模型做测试用例生成、数据提取时,最头疼的就是让它老老实实返回 JSON。你以为它会给你 `{"name":"张三"}`,结果它来一句"好的,这是生成结果:```json...",或者干脆在 JSON 里加注释,直接把你的 `json.loads()` 干崩溃。 模型本质上是个话痨,天生爱解释。但我们要的是结构化数据,不是聊天记录。我整理了四种实战方案,从最简单的提示词技巧到工程化框架,覆盖了从快速验证到生产环境的各种场景。

blues_C的博客 957

python中Mysql和redis结合使用验证登录(实例)

简介 使用python写一个简单的redis和MySQL的验证登陆,我们要达到的目的有以下几种: 在MySQL中创建用户表,有用户名和密码字段 让用户输入用户名和密码进行登录,如果用户名和密码在表中存在则登录成功,否则输出登录失败 如果登录成功,则将登录信息缓存在redis中如果登录成功,则将登录信息缓存在redis中 以后用户的每次登录,都首先查询redis中是否有缓存 如果有就直接登录 如果...

weixin_42784553的博客 772

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

python: 登陆redis , 登录mysql

登陆redis , 登录mysql import sys import pymysql import redis def con_mysql(sql): db = pymysql.connect( host = '0.0.0.0', user = 'root', passwd = '123456', port = 330...

Darkman_EX的博客 1918

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

python 搭建登陆系统,Python实现的登录验证系统完整案例【基于搭建的MVC框架】...

本文实例讲述了Python实现的登录验证系统。分享给大家供大家参考,具体如下:小型登录注册验证系统一、概述​ 使用Redis+MySQL数据库实现一个小型的登录注册验证系统。在这个系统中初步了解认识MVC框架。​ 具备功能:登录、注册、改密、注销。​ 数据库:Redis,MySQL。使用Redis把用户信息存储在内存中,查询数据快。MySQL存储空间更大,对表之间的关系管理更好。两者结合使用发挥各...

weixin_42307002的博客 640

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

模拟输入用户名密码与redis数据库和mysql数据库进行比对

今天讲了一个模拟登陆界面输入用户名和密码。老师讲的很模糊,而且听得不太明白,我的理解链接redis数据库和数据库存储的用户名和密码进行比对,如果匹配成功则登陆成功,如果没有该用户就到mysql数据库,如果能找到该用户并且密码正确然后登陆成功,然后又把该用户名和密码写到redis数据库中。 # python中链接redis和mysql数据库分别需要模块redis和pymysql模块 impor...

into_the_new_world的博客 2222

基于Python与MySQL、Redis和MongoDB数据库的新闻管理系统

项目采用MySQL、Redis和MongoDB三种数据库与python进行数据交互实现在命令行运行的新闻管理系统,根据三种不同数据库对数据的不同特性,将数据分别保存,提高数据的持久性、安全性和高效性。 设置管理员和新闻编辑两种身份,为不同的用户设置不同的权限,实现编辑新闻、审核新闻、删除新闻、增加用户、删除用户等功能 。

yangyuying_1219的博客 870

用python做一个小项目,python做简单小项目

大家好,本文将围绕用python做一个小项目展开说明,python做简单小项目是一个很多人都想弄明白的事情,想搞清楚python开发小项目需要先了解以下几个事情。随着 Python 语言的流行,越来越多的人加入到了 Python 的大家庭中。为什么这么多人学 Python?我要喊出那句话了:“人生苦短,我用 Python!”,正是因为语法简单、容易学习,所以 Python 深受大家喜爱。(Python!Python!Python!

chatgpt001的博客 498

十日Python项目——第三日(用户中心——邮箱验证、修改密码)

此篇博客详细介绍了Python项目中关于邮箱验证创建、修改密码等操作,内容言简意赅,代码多有注释,欢迎大家一起阅读进步!

m0_75048124的博客 1156

进阶编程:编写登陆系统

(接上一篇文章:python 操作 mongo,MySQL,redis) 一.编写一个类 利用类来封装学生信息 class Student: def __init__(self,studentId,name,age,sex,class_id): self.studentId = studentId self.name = name self.age = age self.sex = sex self.class_id =

A15535286714的博客 358

python有什么简单项目,python做简单小项目

最终从新手晋升为高手!我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。这里整理了70个Python实战项目列表,都有完整且详细的教程,你可以从中选择自己想做的项目进行参考学习练手,你也可以从中寻找灵感去做自己的项目。Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

2301_81837718的博客 863

基于MySQL、Redis和MongoDB数据库开发命令行新闻管理系统

基于MySQL、Redis和MongoDB数据库开发命令行新闻管理系统摘要引言系统结构软件与环境项目结构项目使用相关模块数据库功能简析项目流程图实验代码设计数据库接口连接:Mysql_db.pyredis_db.pymongo_db.pypython连接mysql数据表,定义各种操作方法user_dao.pyrole_dao.pytype_dao.pynews_dao.pyredis和mongodb主要用在news表表中,为此创建它们与news表的数据连接表redis_news_dao.pymongo_ne

九月镇灵将的博客 1308

29 | 案例篇:Redis响应严重延迟,如何解决?

在访问商品搜索接口时,我们发现接口的响应特别慢。通过对系统 CPU、内存和磁盘 I/O 等资源使用情况的分析,我们发现这时出现了磁盘的 I/O 瓶颈,并且正是案例应用导致的。接着,我们借助 pidstat,发现罪魁祸首是 mysqld 进程。我们又通过 strace、lsof,找出了 mysqld 正在读的文件。根据文件的名字和路径,我们找出了 mysqld 正在操作的数据库和数据表。综合这些信...

元贞 490

python自动化测试学习笔记-6redis应用

而Cookie就像是服务器给每个来访问的用户贴的标签,而这些标签就是对来访问的客户端的独有的身份的一个标识,这里就如同每个人的身份证一样,带着你的个人信息。这样每个客户端就有了一个唯一的ID,客户端只要传回这个ID就行了,这个ID通常是NANE为JSESIONID的一个Cookie。上面我们知道了Cookie可以让服务器端跟踪每个客户端的访问,但是每次客户端的访问都必须传回这些Cookie,如果Cookie很多,这无形地增加了客户端与服务端的数据传输量,而Session的出现正是为了解决这个问题。

一个不太黑的测试人~ 424
下一篇: 【原创】Django—迅速在window上搭建一个虚拟开发环境~
Python_anning
博客等级 码龄9年 1409粉丝 27原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值