python模拟登录百度贴吧(百度贴吧登录)实例


Posted in Python onDecember 18, 2013

 

# -*- 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('帐号','密码')
# -*- 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('帐号','密码')
Python 相关文章推荐
Python 初始化多维数组代码
Sep 06 Python
零基础写python爬虫之urllib2使用指南
Nov 05 Python
Python while、for、生成器、列表推导等语句的执行效率测试
Jun 03 Python
Python工程师面试必备25条知识点
Jan 17 Python
Python单元测试unittest的具体使用示例
Dec 17 Python
Python实现二叉树前序、中序、后序及层次遍历示例代码
May 18 Python
在Python中合并字典模块ChainMap的隐藏坑【推荐】
Jun 27 Python
Python3之外部文件调用Django程序操作model等文件实现方式
Apr 07 Python
python中get和post有什么区别
Jun 19 Python
在 Windows 下搭建高效的 django 开发环境的详细教程
Jul 27 Python
python爬取网易云音乐热歌榜实例代码
Aug 07 Python
python 实现图与图之间的间距调整subplots_adjust
May 21 Python
python抓取京东商城手机列表url实例代码
Dec 18 #Python
python获取糗百图片代码实例
Dec 18 #Python
python算法学习之计数排序实例
Dec 18 #Python
python算法学习之基数排序实例
Dec 18 #Python
python算法学习之桶排序算法实例(分块排序)
Dec 18 #Python
python计算最大优先级队列实例
Dec 18 #Python
python计算最小优先级队列代码分享
Dec 18 #Python
You might like
Yii中实现处理前后台登录的新方法
2015/12/28 PHP
php 解决扫描二维码下载跳转问题
2017/01/13 PHP
javascript与cookie 的问题详解
2013/11/11 Javascript
asp.net+js实现金额格式化
2015/02/27 Javascript
Angularjs中UI Router的使用方法
2016/05/14 Javascript
JS定时器使用,定时定点,固定时刻,循环执行详解
2016/05/31 Javascript
基于Vue实现timepicker
2017/04/25 Javascript
javascript如何用递归写一个简单的树形结构示例
2017/09/06 Javascript
EasyUI Tree树组件无限循环的解决方法
2017/09/27 Javascript
p5.js入门教程之鼠标交互的示例
2018/03/16 Javascript
Typescript 中的 interface 和 type 到底有什么区别详解
2019/06/18 Javascript
原生js拖拽实现图形伸缩效果
2020/02/10 Javascript
Python中使用ConfigParser解析ini配置文件实例
2014/08/30 Python
Python中设置变量访问权限的方法
2015/04/27 Python
Python将8位的图片转为24位的图片实现方法
2018/10/24 Python
Python实现字符串中某个字母的替代功能
2019/10/21 Python
PyTorch实现AlexNet示例
2020/01/14 Python
python3 使用openpyxl将mysql数据写入xlsx的操作
2020/05/15 Python
Python如何重新加载模块
2020/07/29 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
2021/02/27 Python
Gweniss格温妮丝女包官网:英国纯手工制造潮流包包品牌
2018/02/07 全球购物
Ootori在线按摩椅店:一家专业的按摩椅制造商
2019/04/10 全球购物
机械制造专业个人的自我评价
2013/12/28 职场文书
时尚休闲吧创业计划书
2014/01/25 职场文书
年度献血先进个人事迹材料
2014/02/14 职场文书
小学老师寄语大全
2014/04/04 职场文书
酒店管理专业自荐信
2014/05/23 职场文书
保护环境标语
2014/06/09 职场文书
《中国梦我的梦》大学生演讲稿
2014/08/20 职场文书
2014银行领导班子群众路线对照检查材料思想汇报
2014/09/17 职场文书
龙门石窟导游词
2015/02/02 职场文书
2015年超市员工工作总结
2015/05/04 职场文书
行政处罚听证告知书
2015/07/01 职场文书
2016年优秀党员教师先进事迹材料
2016/02/29 职场文书
uwsgi+nginx代理Django无法访问静态资源的解决
2021/05/10 Servers
详解Go与PHP的语法对比
2021/05/29 PHP