代码如下:
#coding:gbk
import urllib2,urllib,cookielib,re
'''
通用的登陆DZ论坛
参数说明parms:
username:用户名(必填),
password :密码(必填),
domain:网站域名,注意格式必须是:http://www.xxx.xx/(必填),
answer:问题答案,
questionid:问题ID,
referer:跳转地址
这里使用了可变关键字参数(相关信息可参考手册)
'''
def login_dz(**parms):
#初始化
parms_key = ['domain','answer','password','questionid','referer','username']
arg = {}
for key in parms_key:
if key in parms:
arg[key] = parms[key]
else:
arg[key] = ''
#cookie设置
cookieFile = './kan_cookies.dat'
cookie = cookielib.LWPCookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))
#获取formhash
pre_login = arg['domain']+'member.php?mod=logging&action=login&infloat=yes&handlekey=login&inajax=1&ajaxtarget=fwin_content_login'
c = opener.open(pre_login).read()
cookie.save(cookieFile)
patt = re.compile(r'.*?name="formhash".*?value="(.*?)".*?')
formhash = patt.search(c)
if not formhash:
raise Exception('GET formhash Fail!')
formhash = formhash.group(1)
#登陆
postdata = {
'answer':arg['answer'],
'formhash':formhash,
'password':arg['password'],
'questionid':0 if arg['questionid']=='' else arg['questionid'],
'referer':arg['domain'] if arg['referer']=='' else arg['referer'],
'username':arg['username'],
}
postdata = urllib.urlencode(postdata)
req = urllib2.Request(
url= arg['domain']+'member.php?mod=logging&action=login&loginsubmit=yes&handlekey=login&loginhash=LCaB3&inajax=1',
data=postdata
)
c = opener.open(req).read(300)
flag = '登陆失败 %s'%arg['username']
if 'succeedhandle_login' in c:
flag = True
return flag
#使用例子:基本参数登陆
user='xxx'
pwd='xxx'
dom='http://www.discuz.net/' #另一个测试网站:http://bbs.bitsCN.com/
try:
flag = login_dz(username=user,password=pwd,domain=dom)
print(flag)
except Exception,e:
print('Error:',e)
主要更新介绍: 完美整合Discuz!论坛,实现一站式登陆、退出、注册; 同步所有会员资料; 新增购物车功能,商品购买更加方便、快捷; 新增部分快捷菜单,网站访问更加方便; 限制首页商品、店铺标题显示长度; 修正会员后台管理不能更改密码的错误; 完善商品显示页面所有功能链接; 修正后台标签管理部分错误; 修正前台学校列表不按后台顺序显示的错误; 修正搜索功能中学校名称过长导致显示紊乱的现象; 修正
0
python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号