zoukankan      html  css  js  c++  java
  • 下载验证码并保存

    1、使用requests去下载验证码并保存在本地的方法。

    # -*- coding: UTF-8 -*-
    import random
    import requests
    from contextlib import closing
    import time
    headers={
    'Accept': 'image/gif, image/jpeg, image/pjpeg, application/x-ms-application, application/xaml+xml, application/x-ms-xbap, */*',
    'Cookie': '_gscu_1049835508=88254391xh6jjo12; _gscbrs_1049835508=1; Hm_lvt_9e03c161142422698f5b0d82bf699727=1488254392; Hm_lpvt_9e03c161142422698f5b0d82bf699727=1488254801; JSESSIONID=CFB1AAAD0EDF74A45EAF0D9F57AD6FDA',
    'Accept-Language': 'zh-CN',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0; UBrowser/6.0.1471.813) like Gecko',
    'Accept-Encoding': 'gzip, deflate',
    'Host': 'shixin.court.gov.cn',
    'Connection': 'Keep-Alive'
    
    }
    path='C:\Users\Administrator\Desktop\rainbow\'
    url='http://shixin.court.gov.cn/captchaNew.do?captchaId=fac8fc397e624fb4a9286f19fcb19efd&random=0.7611455792023014.jpg'
    response=requests.get(url,headers=headers,stream=True)
    print '测试成功'
    for i in range(20000):
        time.sleep(2)
        with closing(requests.get(url,headers=headers,stream=True)) as response:
            with open(path+str(i)+'.tif','wb') as fd:
                for chunk in response.iter_content(128):
                    fd.write(chunk)

     如果不需要保存的话,直接打开请求得到的图片:

    import requests
    from PIL import Image
    from StringIO import StringIO
    session = requests.Session()
     image = session.get(code_url, headers=headers, stream=True, verify=False)
     i = Image.open(StringIO(image.content))
     #直接打开
    i.show()
    #进行ocr识别
    string_code = pytesseract.image_to_string(i)
    print(string_code)
  • 相关阅读:
    接口测试如何在json中引用mock变量
    接口测试--接口文档规范
    接口测试和性能测试的区别
    接口测试和功能测试的区别
    接口请求(get、post、head等)详解
    软件测试流程
    软件测试系统学习流程和常见面试题
    接口测试之json中的key获取
    正则表达式解析
    Jmeter使用HTTPS协议
  • 原文地址:https://www.cnblogs.com/caicaihong/p/6625537.html
Copyright © 2011-2022 走看看