我用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:上圖這幾個號碼一般不會被我們抽到的,因為這種靚號基本不會被放到公共庫中,我們也就無從抽取了。(此項目被部分刪減)
?
? ? ? ??以上就是本次的教程。喜歡的小哥哥小姐姐們希望點贊轉發評論三連哦~
關注[小宇哥聊技術]發送靚號獲取源代碼。
?
?
我們學習就是為了改變世界。
總結
以上是生活随笔為你收集整理的我用Java抢到了一个手机靓号~的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 办公类常用网站整理
- 下一篇: 好不容易搞来张小龙演讲PPT 看了收获太