Python爬虫学习(十一)下载验证码图片

本文是继前面爬取登录教务系统时,遇到验证码登录的遗留问题探讨!

思路: 下载登录教务系统时的图片,打开读取,人工识别,手动写入再结合账户登录。

一、获取验证码图片

#!/usr/bin/env python3
# -*- coding:utf-8 -*-

import requests  # http客户端
import os  # 创建文件夹
from PIL import Image

os.makedirs('./image/', exist_ok=True)
IMAGE_URL = "http://jwgl.cqjtu.edu.cn/jsxsd/verifycode.servlet?t=0.33489178693749055"


def request_download():
    r = requests.get(IMAGE_URL)
    with open('./image/img.png', 'wb') as f:
        f.write(r.content)


try:
    request_download()
    print('download img')
    im = Image.open('./image/img.png')
    im.show()
except:
    print('download img error!')

二、带验证码图片的request模拟登录

1、分析

我们可以发现登录系统需要:
[a:insert(写入)
+encode:(base4加密的账户和密码)~ 附:base4解密教程讲解
+RANDOMCODE:(验证码)]
在这里插入图片描述

2、模拟登陆

大概思路如图
输入账号、密码、读图识别二维码–》加解密–》request模拟登录

在这里插入图片描述

3、验证结果

登录效果达到,但验证码还是有问题,现在效果如图:
在这里插入图片描述
就是我们常遇到的界面:
在这里插入图片描述
解决方法探索中~

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值