当前位置: 首页 > 图灵资讯 > 行业资讯> python3.7怎么验证是否登录成功?

python3.7怎么验证是否登录成功?

发布时间:2026-01-04 22:24:05

如何在python中验证登录是否成功:

#!/usr/bin/envpython
#-*-coding:gbk-*-
importurllib
importurliblib
importClientCookie
importre
importstring
importtime
importsocket
timeout=10
server="www.juyimeng.com"
loginurl="http://"+server+"/login.php"
v_account=[
{"name":"user1","pass":"pass1","utype":"1","vkey":"用户1"},
{"name":"user2","pass":"pass2","utype":"2","vkey":"用户2"}
]
deffes_write(s):
'''
控制输出信息的显示
'''
prints
defget_response(x):
'''
登录,获取登录后的页面html代码,用于判断结果
'''
fes_write("loginfor"+x["name"])
eform={'username':x["name"],'password':x["pass"],'usertype':x["utype"]}
qstring=urllib.urlencode(eform)
#printqstring
try:
request=urllib2.Request(loginurl,qstring)
response=ClientCookie.urlopen(request)
returnstring.split(response.read(),"\n")
exceptException,e:
fes_write(e)
return"error"
defverify_info(k,l):
'''
检查信息是否正确
'''
forlineinl:
ifk.match(line):
returnTrue
break
returnFalse
defverify_all():
'''
主程序,验证
'''
iftimeout!=0:
socket.setdefaulttimeout(timeout)
fes_write("sockettimeout:"+str(socket.getdefaulttimeout()))
success_num=len(v_account)
forxinv_account:
vkey=re.compile('.*'+x["vkey"]+'.*')
ifverify_info(vkey,get_response(x))==True:
success_num=success_num-1
fes_write(x["name"]+"loginsuccess!")
else:
fes_write("errorwhen"+x["name"]+"login!")
else:
fes_write("errorwhen"+x["name"]+"login!")
ifsuccess_num==0:
fes_write("allthingsrunswell!")
else:
e_notify()
fes_write("somethingiswrong!")

defe_notify():
'''
notify操作错误后
'''
pass
if__name__='__main__':
verify_all()

v_account定义了多个账户,因为用户可能不同,后台机制也不同,所以用多个用户登录

request = urllib2.Request( loginurl , qstring ) 使用post或get的方法。

ClientCookie,python的扩展包

v_account中的vkey用于验证登录页面上的信息是否正常登录

socket.setdefaultimeout用于设置建立socket连接的加时设置。原来没有设置,程序会一直等待响应(如果服务器端最长运行时间会更好),设置10秒。如果一个登录程序在10秒内失败,基本就失败了。

e_notify:您可以自己设置一些notify方法,如电子邮件、短信等。

更多Python知识请关注Python自学网

相关文章

python3.7怎么验证是否登录成功?

python3.7怎么验证是否登录成功?

2026-01-04
python序列解包是什么意思?

python序列解包是什么意思?

2026-01-03
python数据怎么添加列?

python数据怎么添加列?

2026-01-03
python怎么使用文件夹下的脚本?

python怎么使用文件夹下的脚本?

2026-01-03
python支持r语言吗?

python支持r语言吗?

2026-01-03
python3中怎么编写类?

python3中怎么编写类?

2026-01-03