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 25 Python
详解Python3中yield生成器的用法
Aug 20 Python
Python 常用string函数详解
May 30 Python
python清理子进程机制剖析
Nov 23 Python
一个Python最简单的接口自动化框架
Jan 02 Python
基于python实现百度翻译功能
May 09 Python
Pytorch之view及view_as使用详解
Dec 31 Python
基于Tensorflow批量数据的输入实现方式
Feb 05 Python
python3.6环境下安装freetype库和基本使用方法(推荐)
May 10 Python
Python如何输出警告信息
Jul 30 Python
新手必备Python开发环境搭建教程
May 28 Python
python实现双链表
May 25 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
sqlyog 中文乱码问题的设置方法
2008/10/19 PHP
PHP cURL初始化和执行方法入门级代码
2015/05/28 PHP
PHP实现可自定义样式的分页类
2016/03/29 PHP
学习PHP Cookie处理函数
2016/08/09 PHP
jquery.ui.draggable中文文档
2009/11/24 Javascript
javascript document.compatMode兼容性
2010/02/23 Javascript
vue开发心得和技巧分享
2016/10/27 Javascript
vue.js实现条件渲染的实例代码
2017/06/22 Javascript
Vue2.0如何发布项目实战
2017/07/27 Javascript
使用Angular Cli如何创建Angular私有库详解
2019/01/30 Javascript
优雅的将ElementUI表格变身成树形表格的方法步骤
2019/04/11 Javascript
详解vue项目中实现图片裁剪功能
2019/06/07 Javascript
微信小程序如何获取群聊的openGid以及名称详解
2019/07/17 Javascript
vue实现拖拽效果
2019/12/23 Javascript
详解JS预解析原理
2020/06/16 Javascript
ES2020系列之空值合并运算符 '??'
2020/07/22 Javascript
wxPython学习之主框架实例
2014/09/28 Python
给Python初学者的一些编程技巧
2015/04/03 Python
使用Python设置tmpfs来加速项目的教程
2015/04/17 Python
Python实现文件复制删除
2016/04/19 Python
Python实现约瑟夫环问题的方法
2016/05/03 Python
python3.4用循环往mysql5.7中写数据并输出的实现方法
2017/06/20 Python
Python实现调用另一个路径下py文件中的函数方法总结
2018/06/07 Python
PyCharm2018 安装及破解方法实现步骤
2019/09/09 Python
wxPython实现文本框基础组件
2019/11/18 Python
Crabtree & Evelyn欧盟:豪华洗浴、身体和护发
2021/03/09 全球购物
新加坡鲜花速递/新加坡网上花店:Ferns N Petals
2020/08/29 全球购物
.net C#面试题
2012/08/28 面试题
关于毕业的中学校园广播稿
2014/01/26 职场文书
2014党委书记四风对照检查材料思想汇报
2014/09/21 职场文书
个人年终总结结尾
2015/03/06 职场文书
消防演习通知
2015/04/25 职场文书
MySQL复制问题的三个参数分析
2021/04/07 MySQL
一看就懂的MySQL的聚簇索引及聚簇索引是如何长高的
2021/05/25 MySQL
安装配置mysql及Navicat prenium的详细流程
2021/06/10 MySQL
世界十大狙击步枪排行榜
2022/03/20 杂记