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 相关文章推荐
Python3实现从文件中读取指定行的方法
May 22 Python
详解Python3中yield生成器的用法
Aug 20 Python
以一个投票程序的实例来讲解Python的Django框架使用
Feb 18 Python
Python编程实现控制cmd命令行显示颜色的方法示例
Aug 14 Python
Python复制Word内容并使用格式设字体与大小实例代码
Jan 22 Python
python如何实现反向迭代
Mar 20 Python
解决python3爬虫无法显示中文的问题
Apr 12 Python
Python读取stdin方法实例
May 24 Python
对python中GUI,Label和Button的实例详解
Jun 27 Python
Pytorch的mean和std调查实例
Jan 02 Python
django admin 添加自定义链接方式
Mar 11 Python
keras 读取多标签图像数据方式
Jun 12 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/11/25 PHP
sqlyog 中文乱码问题的设置方法
2008/10/19 PHP
PHP 在线翻译函数代码
2009/05/07 PHP
PHP数据的提交与过滤基本操作实例详解
2016/11/11 PHP
JavaScript 应用技巧集合[推荐]
2009/08/30 Javascript
Javascript结合css实现网页换肤功能
2009/11/02 Javascript
JavaScript将相对地址转换为绝对地址示例代码
2013/07/19 Javascript
基于jQuery实现表单提交验证
2014/11/24 Javascript
使用Chrome浏览器调试AngularJS应用的方法
2015/06/18 Javascript
javascript制作幻灯片(360度全景图片)
2015/07/28 Javascript
javascript实现粘贴qq截图功能(clipboardData)
2016/05/29 Javascript
浅谈angularJS中的事件
2016/07/12 Javascript
Windows系统下安装Node.js的步骤图文详解
2016/11/15 Javascript
xmlplus组件设计系列之按钮(2)
2017/04/26 Javascript
微信小程序登录换取token的教程
2018/05/31 Javascript
JavaScript封装的常用工具类库bee.js用法详解【经典类库】
2018/09/03 Javascript
解决ant-design-vue中menu菜单无法默认展开的问题
2020/10/31 Javascript
Vue看了就会的8个小技巧
2021/01/21 Vue.js
Python常见排序操作示例【字典、列表、指定元素等】
2018/08/15 Python
Django中celery执行任务结果的保存方法
2019/07/12 Python
基于python代码批量处理图片resize
2020/06/04 Python
详解anaconda离线安装pytorchGPU版
2020/09/08 Python
python调用摄像头的示例代码
2020/09/28 Python
HTML5 Canvas如何实现纹理填充与描边(Fill And Stroke)
2013/07/15 HTML / CSS
英国电子产品购物网站:Tech in the basket
2019/11/08 全球购物
工程造价与管理专业应届生求职信
2013/11/23 职场文书
大学生创业计划书的用途
2014/01/08 职场文书
住宿生擅自离校检讨书
2014/09/22 职场文书
主持人开场白台词
2015/05/29 职场文书
未婚证明范本
2015/06/15 职场文书
2016年国庆节宣传标语
2015/11/25 职场文书
晚会开幕词范文
2016/03/04 职场文书
python实现简单石头剪刀布游戏
2021/10/24 Python
MyBatis自定义SQL拦截器示例详解
2021/10/24 Java/Android
Vue提供的三种调试方式你知道吗
2022/01/18 Vue.js
动画《平凡职业成就世界最强》宣布制作OVA
2022/04/01 日漫