找回密码
 立即注册
首页 业界区 业界 记apifox-验证码解析

记apifox-验证码解析

泡市 2025-8-20 10:45:08
通常在获取验证码时回需要一些动态的时间戳,记解析动态码的脚本
如接口/sys/randomImage/{{timestamp}}
主要2个动作,一个前置,一个后置
1.png

 
2.gif
3.gif
  1. pm.globals.set('timestamp', new Date().getTime())
  2. console.log("设置全局时间戳变量"+pm.globals.get("timestamp"));
复制代码
前置
4.gif
5.gif
  1. //通过.json()函数,获取到响应体中返回的json数据
  2. let res = pm.response.json()
  3. //定义一个模板,这个模板存的是
  4. const template = `<html>
  5. <img src="https://www.cnblogs.com/{{imgTemplate}}" />
  6. </html>`;
  7. //构建img标签能识别的base64 url,注:如果接口返回的base64 url没有【data:image/png;base64,】则需要拼接进去,否则出不来图片。
  8. //因接口返回的是一个数组,这里打印打一张图片
  9. // let img= "data:image/png;base64,"+ res.result;//res.result是图片地址
  10. let img = res.result.replace(/^data:image\/jpg;base64,/, '');
  11. const result = await pm.executeAsync('/Users/tongzuqi/PycharmProjects/py/ocr/test.py', [img] ,{ command: 'python3' } )
  12. pm.globals.set('captcha', result)
  13. console.log("设置全局时间戳变量:"+pm.globals.get("captcha"));
复制代码
后置
7.gif
8.gif
  1. import sys
  2. import base64
  3. import ddddocr
  4. """
  5. 接收一个参数 = base64
  6. data:image/jpg;base64, 后的内容
  7. 返回一个识别后的
  8. """
  9. # show_ad置为False关闭广告
  10. ocr = ddddocr.DdddOcr(show_ad=False)
  11. # 将base64转bytes
  12. image = base64.b64decode(sys.argv[1])
  13. res = ocr.classification(image)
  14. print(res)
复制代码
test.py控制台如下
9.png

 
 
来源:豆瓜网用户自行投稿发布,如果侵权,请联系站长删除

相关推荐

您需要登录后才可以回帖 登录 | 立即注册