qq在线人数统计,计算腾讯分分彩

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qq在线人数统计,计算腾讯分分彩相关的知识,希望对你有一定的参考价值。

一、接口

本统计结果与im.qq.com右上角显示的在线人数数据相同。

以下两个接口都可以使用,第一个返回JSON字符窜,第二个返回一个.dat的文件,下载后打开也是JSON字符串,官网使用的是https://cgi.im.qq.com/data/1min_city.dat 加了https协议,JAVA运行会报错去掉S正常运行。

http://cgi.im.qq.com/cgi-bin/minute_city

http://cgi.im.qq.com/data/1min_city.dat

这两个接口都是返回JSON格式的字符串,如下:

{"time":"2017-11-13 11:50:12","\\u5176\\u4ed6":33229,"\\u6cb3\\u5317\\u7701":3133,"\\u5c71\\u897f\\u7701":1060,"\\u5185\\u8499\\u53e4":926,"\\u6c5f\\u82cf\\u7701":5554,"\\u5b89\\u5fbd\\u7701":1518,"\\u5c71\\u4e1c\\u7701":3771,"\\u8fbd\\u5b81\\u7701":1528,"\\u5409\\u6797\\u7701":1042,"\\u9ed1\\u9f99\\u6c5f\\u7701":866,"\\u6d59\\u6c5f\\u7701":3285,"\\u6c5f\\u897f\\u7701":1670,"\\u798f\\u5efa\\u7701":2190,"\\u6e56\\u5317\\u7701":2331,"\\u6e56\\u5357\\u7701":1918,"\\u6cb3\\u5357\\u7701":3268,"\\u5e7f\\u4e1c\\u7701":9228,"\\u5e7f\\u897f":2221,"\\u6d77\\u5357\\u7701":230,"\\u56db\\u5ddd\\u7701":3199,"\\u8d35\\u5dde\\u7701":1261,"\\u4e91\\u5357\\u7701":1448,"\\u897f\\u85cf":82,"\\u9655\\u897f\\u7701":1445,"\\u7518\\u8083\\u7701":857,"\\u5b81\\u590f":276,"\\u9752\\u6d77\\u7701":204,"\\u65b0\\u7586":1131,"\\u53f0\\u6e7e\\u7701":28,"\\u5317\\u4eac\\u5e02":2314,"\\u4e0a\\u6d77\\u5e02":2077,"\\u5929\\u6d25\\u5e02":808,"\\u91cd\\u5e86\\u5e02":1993,"\\u9999\\u6e2f":67,"\\u6fb3\\u95e8":9,"minute":[253830109,253828114,253829956,253833362,253831279,253829801,253833383,253826247,253825543,253829464,253826568,253831751,253829399,253830998,253825092,253828054,253826972,253832420,253829276,253831385,253831821,253826831,253827395,253830134,253827741,253827733,253830934,253826264,253825708,253828891,253827626,253830846,253832033,253832611,253830235,253829340,253828440,253829646,253830615,253829011,253825138,253832211,253826789,253829566,253829237,253826910,253832649,253831237,253825358,253827953,253828650,253832207,253829812,253831073,253828368,253832581,253833835,253825330,253833873,253825571]}

time是数据返回时间

unnicode是省份数据

最后的minute 返回60条数据供https://im.qq.com/online/flash/ht/fla_https.swf动态图使用,每秒取一个数

二、JAVA实现计算腾讯分分彩开奖结果

在开始写代码之前需要导入JSON相关的JAR包,点击链接即可下载JSON相关JAR包。

计算规则:在线人数253830109 拆分成2+5+3+8+3+0+1+0+9=31    取31的各位数1 作为万位,0109作为千百十个位,计算结果为10109

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;


public class Curl {
    private static int c1 = 0;
    private static int c2 = 0;
    public static void main(String[] args) throws InterruptedException {
        String s;
        while(true){
            s = new SimpleDateFormat("mmss").format(new Date());
            String a = s.substring(0,2);
            String b = s.substring(2, 4);
            int c = Integer.parseInt(a);
            //System.out.println(s);
            if(b.equals("13")){//腾讯官网会在每分钟的11s 或者12s或者13s的时候更新数据
                qqOlinePeople(c);
            }
            Thread.sleep(1000);
        }
    }
    public static void qqOlinePeople(int c){
        HttpURLConnection conn = null;
        try {
            //URL realUrl = new URL("http://cgi.im.qq.com/cgi-bin/minute_city");两个接口都可以使用
            URL realUrl = new URL("http://cgi.im.qq.com/data/1min_city.dat");
            conn = (HttpURLConnection) realUrl.openConnection();
            conn.setRequestMethod("GET");
            conn.setUseCaches(false);
            conn.setReadTimeout(8000);
            conn.setConnectTimeout(8000);
            conn.setInstanceFollowRedirects(false);
            conn.setRequestProperty("User-Agent","Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0");
            int code = conn.getResponseCode();
            if (code == 200) {
                InputStream is = conn.getInputStream();
                BufferedReader in = new BufferedReader(new InputStreamReader(is, "UTF-8"));
                StringBuffer buffer = new StringBuffer();
                String line = "";
                while ((line = in.readLine()) != null){
                    buffer.append(line);
                }
                String result = buffer.toString(); 
                JSONObject jsonObject = JSONObject.fromObject(result);
                String s1 = jsonObject.get("time").toString();
                JSONArray array = jsonObject.getJSONArray("minute");
                String s = array.get(0).toString();
                int l = Integer.parseInt(s);
                int a[] = new int[9];
                int i = 0;
                int sum = 0; 
                if(c%2==0){
                    c2 = l;
                }else{
                    c1 = l;
                }
                int cha = 0;
                if(c%2==0){
                    cha = c2-c1;
                }else{
                    cha = c1-c2;
                }
                while(true){
                    a[i]=l%10;
                    sum=sum+a[i];
                    i++;
                    l = l/10;
                    if(l/10==0){
                        a[i]=l;
                        break;
                    }                
                }
                NumberFormat nf = NumberFormat.getNumberInstance();
                s = nf.format(Long.parseLong(s));
                System.out.println("开奖结果:"+sum%10+","+a[3]+","+a[2]+","+a[1]+","+a[0]);
                System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())+" "+s1+" "+s+" "+(cha>=0?"+"+cha:cha));
//                for(int i=0 ; i<array.size();i++){
//                    String s  = array.get(i).toString();
//                    System.out.println(s);
//                }
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    
    }
}

将项目打包成.jar 在控制台中运行

技术分享

三、结语

综合比较来看,腾讯分分彩这个计算结果跟开奖结果还是有差距的。

从www.77tj.org来看  http://www.77tj.org这个页面的统计结果跟我的计算结果是一样的,也是取返回结果数组的第一个值。他的标题是QQ在线统计,

http://www.77tj.org/tencent 标题是腾讯在线统计,这个页面的统计结果用来计算的话就是正常的开奖结果。暂时找不到他们统计的接口,希望有能力的道友提供一下。

因为家人最近迷上了分分彩,所以想统计一下开奖结果,然后模拟一下投注和返奖,根据统计结果,然后点醒她。

 

有没有人知道另一个人数统计页面的接口啊。。。

以上是关于qq在线人数统计,计算腾讯分分彩的主要内容,如果未能解决你的问题,请参考以下文章

QQ在线人数统计图数据解析

腾讯笔试题目

如何统计网站在线人数?

全栈编程系列SpringBoot整合Shiro(含KickoutSessionControlFilter并发在线人数控制以及不生效问题配置启动异常No SecurityManager...)(代码片段

javaweb中实现在线人数统计

javaweb中实现在线人数统计