1.读取已注册的用户名和密码:使用re包读取文件,再使用正则表达式提取出用户名和密码,注意这里提取出来的用户名和密码是列表形式,需要将其转换为字符串。具体代码如下:
1 with open('E:\selenium-python测试项目\loginuser.txt', 'r', encoding='utf-8', newline='') as f: #读取已注册的用户信息
2 for line in f:
3 _username = "".join(re.findall('(.*):',line)) # 正则表达式截取文档中的用户名,并转化为str类型
4 _userpassword = "".join(re.findall(':(.*) ',line))
2:存储密码输入错误的用户名,并统计用户名密码输错的次数:使用re包存储数据到指定文件中,然后打开存储的文件使用正则表达式完全匹配用户名,进行统计。具体代码如下:
将密码输入错误的用户名存储到指定的文件中
1 with open('E:\selenium-python测试项目\lockuser.txt', 'a') as f: # 打开lockuser.txt,如果文件不存在,创建该文件。
2 f.write(username + '\n', ) # 把变量username写入lockuser.txt。这里username必须是str格式,如果不是,则可以转一下。
统计登录账号密码出错次数
1 locktxt = open("E:\selenium-python测试项目\lockuser.txt", "r").read() # 打开用户登录错误记录文件
2 error_number = len(re.findall(username+'\n', locktxt))# 统计密码错误次数
1 # Author:dengxiao
2 import re
3 print("*******可用账号dx-dx11,密码全部为123")
4 count = True
5 while count :
6 username = input("用户名:")
7 userpassword = input("密码:")
8 locktxt = open("E:\selenium-python测试项目\lockuser.txt", "r").read() # 打开用户登录错误记录文件
9 error_number = len(re.findall(username+'\n', locktxt))# 统计密码错误次数
10 if error_number >= 3:
11 print("{name}密码已输错三次,已被锁定请联系管理员".format(name=username))
12 continue
13 else:
14 with open('E:\selenium-python测试项目\loginuser.txt', 'r', encoding='utf-8', newline='') as f: #读取已注册的用户信息
15 for line in f:
16 _username = "".join(re.findall('(.*):',line)) # 正则表达式截取文档中的用户名,并转化为str类型
17 _userpassword = "".join(re.findall(':(.*) ',line))
18 if username == _username and userpassword == _userpassword:
19 print("{name}登陆成功".format(name=username))
20 count = False
21 break
22 else:
23 continue
24 if count :
25 print("账号或密码错误")
26 with open('E:\selenium-python测试项目\lockuser.txt', 'a') as f: # 打开lockuser.txt,如果文件不存在,创建该文件。
27 f.write(username + '\n', ) # 把变量username写入lockuser.txt。这里username必须是str格式,如果不是,则可以转一下。