python模拟登录百度贴吧_python模拟登录百度贴吧

3.[代码][Python]代码

# -*- coding:utf-8 -*-

# python3.3.3

import sys,time,re,urllib.parse,urllib.request,http.cookiejar,random,math,os.path,hashlib,json,binascii,threading

"""cookie"""

cookie=http.cookiejar.LWPCookieJar()

#cookie.load('f:/cookie.txt',True,True)

chandle=urllib.request.HTTPCookieProcessor(cookie)

"""获取数据"""

def getData(url):

r=urllib.request.Request(url)

opener=urllib.request.build_opener(chandle)

u=opener.open(r)

#chandle.cookiejar.save('f:/cookie.txt',True,True)

data=u.read()

try:

data=data.decode('utf-8')

except:

data=data.decode('gbk','ignore')

return data

def postData(url,data):

data=urllib.parse.urlencode(data);data=bytes(data,'utf-8')

r=urllib.request.Request(url,data)

opener=urllib.request.build_opener(chandle)

u=opener.open(r)

#chandle.cookiejar.save('f:/cookie.txt',True,True)

data=u.read()

try:

data=data.decode('utf-8')

except:

data=data.decode('gbk','ignore')

return data

def login(name,pwd):

url='http://www.baidu.com'

getData(url)

par={

"apiver":'v3',

"callback":'bd__cbs__oug2fy',

"class":'login',

"logintype":'dialogLogin',

"tpl":'tb',

"tt":'1385013373144'

}

url='https://passport.baidu.com/v2/api/?getapi&%s' % urllib.parse.urlencode(par)

token=re.findall('"token" : "(.*?)"',getData(url))[0]

par.update({"isphone":'false',"username":name,"token":token})

url='https://passport.baidu.com/v2/api/?logincheck&?%s' % urllib.parse.urlencode(par)

data={

"charset":'GBK',

"mem_pass":'on',

"password":pwd,

"ppui_logintime":'1612376',

"quick_user":'0',

"safeflg":'0',

"splogin":'rate',

"u":'http://tieba.baidu.com/'

}

url='https://passport.baidu.com/v2/api/?login'

par.update(data)

bdu=re.findall('hao123Param=(.*?)&',postData(url,par))[0]

par={

"bdu":bdu,

"t":'1385013373144'

}

url='http://user.hao123.com/static/crossdomain.php?%s' % urllib.parse.urlencode(par)

getData(url)

print(json.loads(getData('http://tieba.baidu.com/f/user/json_userinfo')))

"""------输入帐号密码------"""

login('帐号','密码')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值