python3.3教程之模拟百度登陆代码分享


Posted in Python onJanuary 16, 2014
#-*-coding:utf-8-*-
'''
Created on 2014年1月10日
@author: hhdys
'''
import urllib.request,http.cookiejar,re
class Baidu:
    def login(self):
        cj = http.cookiejar.CookieJar()
        opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))
        opener.addheaders = [('User-agent', 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36')]
        resp=opener.open('http://weigou.baidu.com/')
        for c in cj:
            print(c.name,"====",c.value)
        getapiUrl = "https://passport.baidu.com/v2/api/?getapi&class=login&tpl=mn&tangram=true"
        resp2=opener.open(getapiUrl)
        getapiRespHtml = resp2.read().decode("utf-8")
        foundTokenVal = re.search("bdPass\.api\.params\.login_token='(?P<tokenVal>\w+)';", getapiRespHtml)
        if foundTokenVal :
            tokenVal = foundTokenVal.group("tokenVal")
            print(tokenVal)
            staticpage = "http://zhixin.baidu.com/Jump/index?module=onesite"
            baiduMainLoginUrl = "https://passport.baidu.com/v2/api/?login"
            postDict = {
                        'charset':"utf-8",
                        'token':tokenVal,
                        'isPhone':"false",
                        'index':"0",
                        'staticpage': staticpage,
                        'loginType': "1",
                        'tpl': "mn",
                        'callback': "parent.bd__pcbs__n1a3bg",
                        'username':"*****",   #用户名
                        'password':"*****",   #密码
                        'mem_pass':"on",
                        "apiver":"v3",
                        "logintype":"basicLogin"
                        }
            postData = urllib.parse.urlencode(postDict);
            postData = postData.encode('utf-8')
            resp3=opener.open(baiduMainLoginUrl,data=postData)
            for c in cj:
                print(c.name,"="*6,c.value)
    
if __name__=="__main__":
    print("="*10,"开始")
    bd=Baidu()
    bd.login()
Python 相关文章推荐
Python编程中的反模式实例分析
Dec 08 Python
python使用reportlab实现图片转换成pdf的方法
May 22 Python
Python脚本完成post接口测试的实例
Dec 17 Python
python的time模块和datetime模块实例解析
Nov 29 Python
Python编程快速上手——Excel到CSV的转换程序案例分析
Feb 28 Python
python实现从ftp服务器下载文件
Mar 03 Python
python实现Pyecharts实现动态地图(Map、Geo)
Mar 25 Python
关于Keras Dense层整理
May 21 Python
详解python定时简单爬取网页新闻存入数据库并发送邮件
Nov 27 Python
python实现计算器简易版
Dec 17 Python
python 获取谷歌浏览器保存的密码
Jan 06 Python
Python实现查询剪贴板自动匹配信息的思路详解
Jul 09 Python
python解析发往本机的数据包示例 (解析数据包)
Jan 16 #Python
python多线程扫描端口示例
Jan 16 #Python
python发送arp欺骗攻击代码分析
Jan 16 #Python
分析python服务器拒绝服务攻击代码
Jan 16 #Python
python获取豆瓣电影简介代码分享
Jan 16 #Python
linux系统使用python获取cpu信息脚本分享
Jan 15 #Python
linux系统使用python监测系统负载脚本分享
Jan 15 #Python
You might like
用PHP来写记数器(详细介绍)
2006/10/09 PHP
ThinkPHP+EasyUI之ComboTree中的会计科目树形菜单实现方法
2017/06/09 PHP
JavaScript更改class和id的方法
2008/10/10 Javascript
Yii-自定义删除确认弹框(zyd)jquery实现代码
2013/03/04 Javascript
解析jquery中的ajax缓存问题
2013/12/19 Javascript
多选列表框动态添加,移动,删除,全选等操作的简单实例
2014/01/13 Javascript
JQuery each()嵌套使用小结
2014/04/18 Javascript
使用JavaScript获取电池状态的方法
2014/05/03 Javascript
详谈jQuery中的this和$(this)
2014/11/13 Javascript
js电话号码验证方法
2015/09/28 Javascript
基于JavaScript实现简单的随机抽奖小程序
2016/01/05 Javascript
基于Jquery插件Uploadify实现实时显示进度条上传图片
2020/03/26 Javascript
JavaScript利用正则表达式替换字符串中的内容
2016/12/12 Javascript
微信小程序本地缓存数据增删改查实例详解
2017/05/24 Javascript
vue中$refs的用法及作用详解
2018/04/24 Javascript
详解微信小程序之scroll-view的flex布局问题
2019/01/16 Javascript
vue项目中实现缓存的最佳方案详解
2019/07/11 Javascript
JS XMLHttpRequest原理与使用方法深入详解
2020/04/30 Javascript
vue组件入门知识全梳理
2020/09/21 Javascript
[01:51]开启你的城市传奇 完美世界城市挑战赛开始报名
2018/10/09 DOTA
Python 匹配任意字符(包括换行符)的正则表达式写法
2009/10/29 Python
Python网络爬虫神器PyQuery的基本使用教程
2018/02/03 Python
python获取文件路径、文件名、后缀名的实例
2018/04/23 Python
python调用支付宝支付接口流程
2019/08/15 Python
python Qt5实现窗体跟踪鼠标移动
2019/12/13 Python
python中p-value的实现方式
2019/12/16 Python
pytorch 图像中的数据预处理和批标准化实例
2020/01/15 Python
python 中不同包 类 方法 之间的调用详解
2020/03/09 Python
Nginx+Uwsgi+Django 项目部署到服务器的思路详解
2020/05/08 Python
纯CSS实现预加载动画效果
2017/09/06 HTML / CSS
CSS Grid布局教程之网格单元格布局
2014/12/30 HTML / CSS
工程售后服务承诺书
2014/05/21 职场文书
2015出纳试用期工作总结
2014/12/12 职场文书
同事欢送会致辞
2015/07/31 职场文书
2016大学生社会实践单位评语
2015/12/01 职场文书
redis调用二维码时的不断刷新排查分析
2022/04/01 Redis