文档章节

Python模拟登录(带验证码)

 梦回雪夜观花
发布于 2016/02/05 11:31
字数 154
阅读 293
收藏 18
import urllib
import urllib2
import cookielib
    
def getImg(picurl):
    '''
    request for random_code picture and cookie 
    '''
    pic = opener.open(picurl).read()
    with open('./verifyImg.jpg','wb') as emptyPic:
        emptyPic.write(pic)

def verifyImg(picpath):
    '''
    TODO
    '''
    pass

def login(coo):
    loginUrl = 'http://jwxt.wust.edu.cn/whkjdx/Logon.do?method=logon'
   
    data = {'USERNAME':'*****', 'PASSWORD':'*****', 'RANDOMCODE':coo}
    #encode the postData
    postData = urllib.urlencode(data)
    
    user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
    header = {'User-Agent':user_agent,'Referer':'http://jwxt.wust.edu.cn/whkjdx/framework/main.jsp'}
    #generate a Request with url,postData headers and cookie
    request = urllib2.Request(loginUrl, postData, headers = header)
    #post data
    content = opener.open(request)
    #get html file
    mainUrl = 'http://jwxt.wust.edu.cn/whkjdx/framework/main.jsp'
    mainContent = opener.open(mainUrl).read()
    print mainContent 

if __name__ == '__main__':
    
    cookie = cookielib.CookieJar()
    handler = urllib2.HTTPCookieProcessor(cookie)
    opener = urllib2.build_opener(handler)

    picurl = 'http://jwxt.wust.edu.cn/whkjdx/verifycode.servlet'
    getImg(picurl)
    #verifyImg(picpath)
    
    randomCode = raw_input('Plz input teh randomcode:')
    
    login(randomCode)


© 著作权归作者所有

共有 人打赏支持
粉丝 8
博文 13
码字总数 16693
作品 0
武汉
程序员
私信 提问
python 淘宝系列(一):模拟登陆

前言 想实现python登录淘宝,大概有两种思路:1. 使用淘宝开放API接口; 2.使用模拟登陆发送post 数据登录。 两种方式各有优缺点。使用淘宝API,首先得装API库,比较大,有200多M,对小程序而...

艾柯
2014/01/07
0
8
python模拟登录验证码的问题

我今天尝试使用python模拟登录,首先我将验证码的图片地址打开,得到新的图片,但是输入之后会弹出验证码不正确的提示,于是我打开firebug去 调试,然后使用firebug去放在src上的时候,显示出...

funCar
2015/05/23
803
3
Android 通过Volley 模拟登录教务系统 出错,出错原因:系统正忙

我想做一个Android端教务系统,通过Volley发送请求。 思路为:1.获取并存储cookie 2.保存网页的__VIEWSTATE值 3.头信息中带上cookie,下载验证码 4.设置头信息post数据 预期是302重定向到首页...

汪汪汪汪汪
2016/05/26
368
3
Python3.6实现12306火车票自动抢票,附源码

Python(发音:英[?pa?θ?n],美[?pa?θɑ:n]),是一种面向对象、直译式电脑编程语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理...

猫咪编程
06/05
0
0
带你入门Python爬虫,8个常用爬虫技巧盘点

python作为一门高级编程语言,它的定位是优雅、明确和简单。 我学用python差不多一年时间了, 用得最多的还是各类爬虫脚本, 写过抓代理本机验证的脚本、写过论坛中自动登录自动发贴的脚本 ...

糖宝lsh
08/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

EOS docker开发环境

使用eos docker镜像是部署本地EOS开发环境的最轻松愉快的方法。使用官方提供的eos docker镜像,你可以快速建立一个eos开发环境,可以迅速启动开发节点和钱包服务器、创建账户、编写智能合约....

汇智网教程
今天
12
0
《唐史原来超有趣》的读后感优秀范文3700字

《唐史原来超有趣》的读后感优秀范文3700字: 作者:花若离。我今天分享的内容《唐史原来超有趣》这本书的读后感,我将这本书看了一遍之后就束之高阁了,不过里面的内容一直在在脑海中回放,...

原创小博客
今天
19
0
IC-CAD Methodology知识图谱

CAD (Computer Aided Design),计算机辅助设计,指利用计算机及其图形设备帮助设计人员进行设计工作,这个定义同样可以用来近似描述IC公司CAD工程师这个岗位的工作。 早期IC公司的CAD岗位最初...

李艳青1987
今天
18
0
CompletableFuture get方法一直阻塞或抛出TimeoutException

问题描述 最近刚刚上线的服务突然抛出大量的TimeoutException,查询后发现是使用了CompletableFuture,并且在执行future.get(5, TimeUnit.SECONDS);时抛出了TimeoutException异常,导致接口响...

xiaolyuh
今天
9
0
dubbo 搭建与使用

官网:http://dubbo.apache.org/en-us/ 一,安装监控中心(可以不安装) admin管理控制台,monitor监控中心 下载 bubbo ops 这个是新版的,需要node.js环境,我没有就用老版的了...

小兵胖胖
今天
19
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部