我用Java抢到了一个手机靓号~

        最近闲来无事,想注册一些不常用的软件来玩,但是发现需要手机号注册,可我又不希望用我常用的手机号,所以就想起来买一个小号注册。正好最近看到网上有出售手机号的,支持自选号码,顿时我就有想法了

        但是我在选号平台上搜索了几次,发现出现靓号的概率很小很小,总是挑不到我喜欢的靓号。这可怎么办?是样本太少,还是我频率太低?行吧,不想多说了,键来~

        作为程序员,我觉得我们很有必要用自己的知识和能力,来给我们挑选一个靓号。我先Google了一下,想看看有没有现成的代码供我学习,但是很遗憾,没有,仅有的都是一些散乱的代码,根本无法正常运行。没办法,那就上手写吧!经过长达几个小时的coding奋斗,我完成了搜索靓号的代码工作。

        此项目可以供Java初学者进行简单项目学习,也可供其他技术人员在此项目基础上进行开发(禁止商用)。阅读本文你可以学到:

            1.文件IO的读取与保存。

            2.okhttp的get请求使用。

            3.maven引入依赖包。

            4.正则表达式的使用与分析。

            5.Java8 Stream的使用。

            6.靓号的获取。

 

        先看一下伪代码,由以下四部分构成。详细源代码关注[小宇哥聊技术]发送靓号获取。

 

顶层设计:

PhoneNumber phoneNumber = new PhoneNumber();
Set<Long> numberSet = phoneNumber.readFile(); // 读取文件
phoneNumber.scan(numberSet); // 搜索靓号
phoneNumber.writeFile(numberSet); // 保存靓号
phoneNumber.regex40(numberSet); // 分析号码,找出你喜欢的靓号

        这个项目,我使用了文件来进行号码的存储,把所有搜索的号码全都存放到文件中进行保存。

ArrayList<String> arrayList = new ArrayList<>();
FileReader fileReader = new FileReader(file);
BufferedReader bufferedReader = new BufferedReader(fileReader);
String strLine;
while ((strLine = bufferedReader.readLine()) != null) {
    arrayList.add(strLine);
}
bufferedReader.close();
fileReader.close();

        然后我们开始通过分析页面,找出所需要的url进行分析响应结构,这个页面还是非常简单的,我们对字符串进行简单的处理,就把数据的结构给解析出来了。伪代码如下:

String url = "";
OkHttpClient client = new OkHttpClient();
for (int i = 0; i < NUM_MAX; i++) {
    Request request = new Request.Builder().url(url).build();
    Call call = client.newCall(request);
    String result = call.execute().body().string();
    JSONObject jsonObject = JSON.parseObject(result);
    TimeUnit.SECONDS.sleep(1);
}

        把阈值调大,循环执行多次,我们的文件系统中就已经保存到几万条数据了,现在已经可以对号码进行分析了。如何找到一个别人没有发现的靓号是关键,我们可以通过正则表达式来进行分析处理,找到里面最好的靓号。

result = result.stream()
          .filter(temp -> {
              String pattern = "(1|2|3|5|6|7|8|9){11}";
              Boolean isMatch = Pattern.matches(pattern, temp.toString());
              return isMatch ? true : false;
          })
          .collect(Collectors.toSet());

 

        PS:上图这几个号码一般不会被我们抽到的,因为这种靓号基本不会被放到公共库中,我们也就无从抽取了。(此项目被部分删减)

 

        以上就是本次的教程。喜欢的小哥哥小姐姐们希望点赞转发评论三连哦~

关注[小宇哥聊技术]发送靓号获取源代码。

 

 

我们学习就是为了改变世界。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值