python解决接口测试获取手机验证码方法
小编给大家分享一下python解决接口测试获取手机验证码方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨方法吧!

站在用户的角度思考问题,与客户深入沟通,找到本溪网站设计与本溪网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、成都网站建设、企业官网、英文网站、手机端网站、网站推广、空间域名、虚拟空间、企业邮箱。业务覆盖本溪地区。
python解决接口测试获取手机验证码问题的方法:
Android在收到短信后会发送一个Action为android.provider.Telephony.SMS_RECEIVED的广播,所以我们只需要写个类继承BroadcastReceiver就可以很容易地监听到短信。
package com.example.getsms;
import android.content.BroadcastReceiver;
import android.content.ContentResolver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.SmsMessage;
import android.text.TextUtils;
import android.util.Log;
public class SmsInterceptReceiver extends BroadcastReceiver {
private final String TAG = "SmsRec";
private static final String SMS_EXTRA_NAME ="pdus";
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
String message = "";
Log.e(TAG, "free message " );
Bundle extras = intent.getExtras();
if ( extras != null ) {
try {
Object[] smsExtra = (Object[]) extras.get( SMS_EXTRA_NAME );
ContentResolver contentResolver = context.getContentResolver();
Log.e(TAG, "free message " );
for ( int i = 0; i < smsExtra.length; ++i ) {
SmsMessage sms = SmsMessage.createFromPdu((byte[]) smsExtra[i]);
String body = sms.getMessageBody().toString();
message += body;
}
Log.e(TAG, "free message : " + message);
} catch (Exception e) {
// TODO: handle exception
Log.e(TAG, e.getMessage());
}
}
}
}AndroidManifest.xml里注册一下接收器:
添加权限:
python 代码,主要通过adb log来获取apk包所截取的短信信息,然后进行分析后既可使用。
__author__ = 'guozhenhua' #coding=utf-8 import urllib2 import os,time #解析短信验证码 os.system("adb logcat -c") cmd="adb logcat -d |findstr E/SmsRec" #time.sleep(30); while(1): smscode= os.popen(cmd).read() #print smscode if (smscode!=""): smscode=smscode.split("验证码:")[1].split(",")[0] break; print "验证码是:"+smscode
看完了这篇文章,相信你对python解决接口测试获取手机验证码方法有了一定的了解,想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!
分享题目:python解决接口测试获取手机验证码方法
当前地址:http://www.jxjierui.cn/article/ijpsjo.html


咨询
建站咨询
