B2B网络软件

 找回密码
 立即注册 审核网站号:QQ:896757558
搜索
查看: 1839|回复: 0
打印 上一主题 下一主题

🌸AIWROK软件手机短信采集按需采集

[复制链接]

1186

主题

1191

帖子

8021

积分

abc

Rank: 9Rank: 9Rank: 9

积分
8021
跳转到指定楼层
楼主
发表于 2025-3-5 09:09:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
AIWROK软件手机短信采集按需采集





这个正则你要按需要重写一下


  1. /*
  2.   这个是获取手机短信的例子,


  3.   最近很多人用AIWORK怎么获取短信验证码,这样就不用去打开,然后一点一点的采集了。

  4.   其实AIwork是有很便捷的方式进验证码采集的,比如下面这段,按时间排序的短信验证码,这样就可以采集出验证码,

  5.   并且可以全部输入数字出来,有哪位朋友需要这段代码的请加群或是加我Q获取这段现成的代码。

  6.   下面是AIWORK演示代码操作:
  7. */


  8. // 定义一个函数,用于读取最新的短信
  9. function readLatestSms() {
  10.     // 引入Android的ContentResolver和Uri类
  11.     var ContentResolver = Packages.android.content.ContentResolver;
  12.     var Uri = Packages.android.net.Uri;

  13.     // 获取当前上下文的内容解析器
  14.     var contentResolver = context.getContentResolver();

  15.     // 指定短信内容的URI
  16.     var smsUri = Uri.parse("content://sms/inbox");

  17.     // 创建一个大小为4的字符串数组,用于指定查询的字段
  18.     var projection = java.lang.reflect.Array.newInstance(java.lang.String, 4);
  19.     projection[0] = "_id";      // 短信ID
  20.     projection[1] = "address";  // 短信发送者地址
  21.     projection[2] = "date";     // 短信发送日期
  22.     projection[3] = "body";     // 短信内容

  23.     // 按照日期降序排列
  24.     var sortOrder = "date DESC";


  25.     // 查询短信内容
  26.     var cursor = contentResolver.query(smsUri, projection, null, null, sortOrder);


  27.     // 检查游标是否有效并移动到第一条记录
  28.     if (cursor != null && cursor.moveToFirst()) {
  29.         // 获取发送者地址和短信内容的索引
  30.         var addressIndex = cursor.getColumnIndex("address");
  31.         var bodyIndex = cursor.getColumnIndex("body");

  32.         // 获取发送者地址和短信内容
  33.         var address = cursor.getString(addressIndex);
  34.         var body = cursor.getString(bodyIndex);


  35.         // 返回短信的发送者和内容
  36.         return ("From: " + address + ", Content: " + body);


  37.         cursor.close(); // 关闭游标
  38.     } else {
  39.         // 如果没有找到短信,返回提示信息
  40.         return ("No SMS found.");
  41.     }
  42. }


  43. // 调用函数,获取最新的短信内容并打印
  44. printl(readLatestSms());


  45. // 获取短信内容
  46. let smsContent = readLatestSms();
  47. // 打印短信内容
  48. printl(smsContent);


  49. // 定义正则表达式,用于匹配验证码(假设验证码在特定格式的短信中)
  50. let regex = /【新浪】(\d+)/;
  51. // 执行正则表达式匹配
  52. let match = regex.exec(smsContent);


  53. // 如果找到了匹配的验证码
  54. if (match) {
  55.     let captchaCode = match[1]; // 提取验证码
  56.     printl("验证码是:", captchaCode); // 打印验证码
  57. } else {
  58.     printl("未能找到验证码"); // 如果未找到,打印提示信息
  59. }
复制代码

以下是代码的详细说明:

1. 引入必要的类
var ContentResolver = Packages.android.content.ContentResolver;
var Uri = Packages.android.net.Uri;


这里引入了Android的ContentResolver和Uri类,用于访问设备上的短信内容。

2. 获取内容解析器
var contentResolver = context.getContentResolver();


通过context.getContentResolver()获取当前上下文的内容解析器,用于查询短信数据。

3. 指定短信内容的URI
var smsUri = Uri.parse("content://sms/inbox");


指定了短信收件箱的URI,用于访问设备上的短信数据。

4. 定义查询字段
var projection = java.lang.reflect.Array.newInstance(java.lang.String, 4);
projection[0] = "_id";      // 短信ID
projection[1] = "address";  // 短信发送者地址
projection[2] = "date";     // 短信发送日期
projection[3] = "body";     // 短信内容


定义了一个字符串数组,用于指定查询的字段,包括短信ID、发送者地址、发送日期和短信内容。

5. 排序方式
var sortOrder = "date DESC";

按照短信的发送日期降序排列,确保最新的短信排在最前面。

6. 查询短信内容
var cursor = contentResolver.query(smsUri, projection, null, null, sortOrder);


使用contentResolver.query()方法查询短信内容,返回一个游标对象。

7. 检查并处理查询结果
if (cursor != null && cursor.moveToFirst()) {
    var addressIndex = cursor.getColumnIndex("address");
    var bodyIndex = cursor.getColumnIndex("body");
    var address = cursor.getString(addressIndex);
    var body = cursor.getString(bodyIndex);
    return ("From: " + address + ", Content: " + body);
    cursor.close(); // 关闭游标
} else {
    return ("No SMS found.");
}


检查游标是否有效并移动到第一条记录,然后获取发送者地址和短信内容,最后返回短信的发送者和内容。如果没有找到短信,则返回提示信息。

8. 调用函数并打印结果
printl(readLatestSms());
let smsContent = readLatestSms();
printl(smsContent);


调用readLatestSms()函数获取最新的短信内容,并打印出来。

9. 使用正则表达式提取验证码
let regex = /【新浪】(\d+)/;
let match = regex.exec(smsContent);
if (match) {
    let captchaCode = match[1];
    printl("验证码是:", captchaCode);
} else {
    printl("未能找到验证码");
}


定义了一个正则表达式,用于匹配特定格式的短信中的验证码。如果找到匹配的验证码,则提取并打印出来;否则,打印提示信息。

总结
这段代码的主要功能是从Android设备的短信收件箱中读取最新的短信,并通过正则表达式提取出验证码。代码使用了Android的ContentResolver和Uri类来访问短信数据,并通过正则表达式匹配特定的短信格式来提取验证码。

回复

使用道具 举报

本版积分规则

关闭

QQ|»营销软件综合讨论|»营销软件有问必答|»营销软件教程专区|»营销软件POST脚本分享|»营销软件普通脚本分享|»营销软件软件资讯|»营销软件精品软件|»营销软件更新公告|营销软件|B2B软件|B2B网络软件 ( 京ICP备09078825号 )本网站开发的营销软件是一款新的网络营销软件,这款营销可以去网站软件,博客软件,B2B软件,分类信息网发贴,可以抢沙发,可以到百度文库上传WORD文档,可以到一些是相册网站自动上传图片,这个自动发帖软件自带云蜘蛛,加快收录,有6种对接打码接口,方便,效率高,速度快,而且对拖动的验证码全网第一家独家支持,全部原创技术,独家研发,正版原创带版权软件。选择万能营销软件,就选择了一种赚钱的效率,从没有被超越过,一直在努力研发新技术。放飞梦想,解放双手,来点创意,成就你的梦想,就在万能营销软件开始

map2

GMT+8, 2026-10-3 13:48 , Processed in 0.125296 second(s), 33 queries .

快速回复 返回顶部 返回列表