http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 3773|回复: 6

[求助] 飞哥来看下

[复制链接]
发表于 2015-8-3 23:06:42 | 显示全部楼层 |阅读模式
地址 http://1.aa688.net/  搜索码 86182

如图

如图
  飞哥麻烦看下 如何获取这些测速的数据。。


1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2015-8-4 00:04:08 | 显示全部楼层
抓不到包吗?
发表于 2015-8-4 09:17:49 | 显示全部楼层
这个直接抓包就有看到吧
 楼主| 发表于 2015-8-4 09:20:11 | 显示全部楼层

抓包 测速的时候 是返回一个图片。。
 楼主| 发表于 2015-8-4 09:20:16 | 显示全部楼层
站长苏飞 发表于 2015-8-4 09:17
这个直接抓包就有看到吧

抓包 测速的时候 是返回一个图片。。
发表于 2015-8-4 09:33:10 | 显示全部楼层
通过JS算的吧。你看下
[JavaScript] 纯文本查看 复制代码
<script type="text/javascript">
function Ajax (url,params,callback) {
        var xhr = !!0;
        try {//IE7+,Chrome and etc.
            xhr = new XMLHttpRequest;
        } catch(e) {//IE6系列
            try {
                xhr = new ActiveXObject("MSXML2.XMLHTTP");
            } catch(e2) {
                try {
                    xhr = new ActiveXObject("Microsoft.XMLHTTP");
                } catch(e3) {
                    xhr = false;
                }
            }
        }
        if (!xhr)return;
        xhr.open('POST', url, true);
        xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
        xhr.onreadystatechange = function() {
            if (xhr.readyState == 4 && callback) {
                callback(xhr.status == 200 ? xhr : null);
            }
        };
        xhr.send(params);
 }
function loginForm (argument) {
        var userName = document.getElementById("user_name"),tN;
        while( !tN || tN > 900){
            tN = tN = parseInt((+(new Date())-(Math.random())*10).toFixed(3).slice(-3).replace('.',''),10);
        }
        userName.value = 't' + parseInt(tN,10);
        document.getElementById("login_form").submit();
    }
var li = document.getElementsByTagName("li"),
    st, count = 0,

    //btn = document.getElementsByTagName('button')[0],
    speed = document.getElementById('speed');

var cache = [],
    timeout = null;

var cacheImg = function() {
    var cid = '';
    for (var c = 0; c < li.length; c++) {
        var clink = {}
        cid = c + '';
        clink.img = document.createElement('img');
        clink.url = li[c].getElementsByTagName("a")[0].href.split('/').slice(0, 3).join('/') + "/speed.gif?";
        clink.time = 0;
        clink.number = 0;
        clink.img.onerror = getError;
        clink.img.onload = getLoad;
        clink.img.id = cid;
        clink.loadTime = [];
        clink.stop = false;
        cache[c] = clink;
    }
}
var clear = function(c) {
    clearTimeout(timeout);
    timeout = null;
    if (!c) {
        for (var i = li.length - 1; i >= 0; i--) {
            if (li[i].getElementsByTagName('span').length) {
                li[i].getElementsByTagName('span')[0].innerHTML = '';
            }
        };
    };
}
var test = function(c) {
    clear(c);
    //btn.setAttribute('disabled', 'disabled');
    var cid = "";
    if (cache.length > 0 && cache[c]) {
        if (li[c].getElementsByTagName("span").length > 0) {
            li[c].getElementsByTagName("span")[0].innerHTML = "測速中";
            cache[c].img.src = cache[c].url + (Math.random() + '').replace('0.', '');
        } else {
            var span = document.createElement("span");
            span.id = c + "m";
            span.innerHTML = "測速中";
            li[c].appendChild(span);
            cache[c].img.src = cache[c].url + (Math.random() + '').replace('0.', '');
            speed.appendChild(cache[c].img);
        }
        cache[c].time = new Date().getTime();
        cache[c].stop = false;
        timeout = setTimeout(function() {
            getError.call(cache[c].img, c);
        }, 5000);
    } else {
        //btn.removeAttribute('disabled');
    };
}

    function getError(c) {
        var n = this.id;
        if (typeof c === 'number') {
            n = c;
        };
        n = parseInt(n, 10);
        if (document.getElementById(this.id + 'm')) {
            if (!cache[parseInt(n, 10)].stop) {
                cache[parseInt(n, 10)].number = 0;
                cache[parseInt(n, 10)].stop = true;
                if (document.getElementById(n + 'm').innerHTML != '超時' || document.getElementById(n + 'm').innerHTML == '測速中') {
                    document.getElementById(n + 'm').innerHTML = '無法鏈接';
                }
            };
            setTimeout(function() {
                test(n + 1);
            }, 500);
        }
    }

    function getLoad() {

        var end = new Date().getTime(),
            cid = parseInt(this.id, 10),
            clink = cache[cid],
            td = clink.number ? end - cache[cid].time : end - cache[cid].time,
            total = 0;
        cache[cid].loadTime.push(td);
        cache[cid].number += 1;
        if (cache[cid].stop) {
            return;
        }

        if (cache[cid].number < 2) {

            setTimeout(function() {
                test(cid);
            }, 500);
        } else {
            for (var c = 0; c < 2; c++) {
                total += clink.loadTime[c];
            }
            document.getElementById(cid + 'm').innerHTML = (total / 2).toFixed(2) + '毫秒';
            count -= 1;
            cache[cid].number = 0;
            cache[cid].loadTime.length = 0;
            cache[cid].stop = true;
            setTimeout(function() {
                test(cid + 1);
            }, 500);
        }
    }

cacheImg();
</script>

 楼主| 发表于 2015-8-4 09:57:24 | 显示全部楼层
站长苏飞 发表于 2015-8-4 09:33
通过JS算的吧。你看下
[mw_shl_code=javascript,true]
function Ajax (url,params,callback) {

好谢谢飞哥。。
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-5-8 16:02

© 2014-2021

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