最近游戏项目中更新机制有所修改,游戏启动时会从cdn上读取一个文件(约60B),但是后台异常收集系统中发现很多玩家请求不了该文件(libcurl的get请求),返回的error code有很多种,以6、22、28、56居多。

 

一直无法确定是否跟程序完全无关(之前遇到过返回error code 23跟程序有关,是程序出bug了),因为有一些玩家反映使用2g/3g网络就正常进入游戏了。

之后我将系统中查询出来的数据,主要是IP,通过调用第三方的接口(其实就是发一条http请求),获得该IP所在地区以及线路,在excel中进行分析。网上有很多这种API,但是我发现还是腾讯提供的IP共享计划最为准确,以IP:117.136.73.74为例

 

http://ip.qq.com/cgi-bin/searchip

 

http://www.baidu.com/s?ie=utf-8&wd=117.136.73.74 

 

新浪 http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=117.136.73.74

 

淘宝 http://ip.taobao.com/service/getIpInfo.php?ip=117.136.73.74

显示:华北 - 北京 移动   云南省/北京  这个差距有点大 - -

 

我获取IP的例子使用的是百度的网址,本想使用腾讯的分享计划,一是它的接口是cgi动态的比较慢,二是它的页面是gbk我抓取回来是乱码,不想搞乱码的问题就直接使用了百度的页面

 

request.get('http://www.baidu.com/s?ie=utf-8&wd=' + ip, {form:{}}, function(error, respose, body) {
    if (/IP地址:&nbsp;([^<]+)<\/span>([^<]+)/.test(body)) {
        //console.log(RegExp["$1"] + '\t' + RegExp['$2']);
        fn(RegExp['$2']);
    }
});
 

IP的准确性的更多相关文章

  1. HTTPDNS开源 Android SDK,赋能更多开发者参与共建

    为赋能更多开发者参与共建,阿里云HTTPDNS开源 Android SDK,iOS SDK也在做开源准备,不久也将开放给开发者.HTTPDNS是阿里云移动研发平台面向多端应用(移动端APP,PC客户端 ...

  2. 常用正则表达式大全,手机、电话、邮箱、身份证(最严格的验证)、IP地址、网址、日期等

    <script type="text/javascript">/* * 手机号码格式 * 只允许以13.15.18开头的号码 * 如:13012345678.15929 ...

  3. TCP/IP入门(3) --传输层

    原文:http://blog.csdn.net/zjf280441589/article/category/1854365 传输层的主要功能 1)传输层为应用进程之间提供端到端的逻辑通信(网络层是为主 ...

  4. Cisco IOS IP Service Level Agreementv (IP SLA)

    Responder and Control Protocol 1.Responder内嵌在思科目标路由器中的一个组件,用来对IP SLA请求包做应答,通过对应达包添加时间戳属性,以提高测量计算的准确性 ...

  5. 最新IP地址数据库

    2016年12月1日 最新发行版 265051条数据 基于:国内基于省市区以及运营商 国外基于国家 版本:全球旗舰版  国内精华版 国外拓展版 英文版 掩码版 字段:大洲 国家 省份 城市 县区 运营 ...

  6. 一种基于自定义代码的asp.net网站首页根据IP自动跳转指定页面的方法!

    一种基于自定义代码的asp.net网站首页根据IP自动跳转指定页面的方法! 对于大中型网站,为了增强用户体验,往往需要根据不同城市站点的用户推送或展现相应个性化的内容,如对于一些大型门户网站的新闻会有 ...

  7. TCP/IP四层模型与OSI参考模型

    TCP/IP四层模型: 1.链路层(数据链路层/网络接口层):包括操作系统中的设备驱动程序.计算机中对应的网络接口卡 2.网络层(互联网层):处理分组在网络中的活动,比如分组的选路. 3.运输层:主要 ...

  8. TCP/IP(三)数据链路层~1

    前言 其实前面一堆讲的物理层的概念,会感觉特别的难理解,因为这是一个非常强大的计算机网络体系的底层知识,没有关系!我们大致了解一下就行了. 一.数据链路层概述 这是百度的简介 看图:理解一下,数据链路 ...

  9. <TCP/IP>ICMP报文的分类

    Internet控制报文协议,即为ICMP(Internet Control Message Protocal),用于主机,路由器之间传递信息,其目的是让我们能够检测网路的连线状况﹐也能确保连线的准确 ...

随机推荐

  1. FileInputStram入门

    1.read() 读取一个字节 @Test public void test1() throws Exception{  //1.指定文件读取路径  String filePath = "E ...

  2. CVE-2010-0249 IE8 UAF漏洞分析

    CVE-2010-0249 [CNNVD]Microsoft Internet Explorer非法事件操作内存破坏漏洞(CNNVD-201001-153) Microsoft Internet Ex ...

  3. win10编译caffe跑faster-rcnn(cuda7.5)

    2017年1月13日 15:46:04 github.com/Microsoft/caffe这版现在不算是BVLC/caffe的官方windows分支:官方windows分支是一个叫willyd的家伙 ...

  4. JS高级程序设计 表单部分

    目录:     表单:1.引用表单           2.提交表单           3.重置表单           4.表单字段 在HTML中,表单是由<form>元素来表示的,而 ...

  5. Java多线程及并发

    进程:它是内存中的一段独立的空间. 线程:位于进程中,负责当前进程中的某个具备独立运行资格的空间. 进程是负责整个程序的运行,而线程是程序中具体的某个独立功能的运行.一个进程中至少应该有一个线程. 多 ...

  6. ref:Spring JdbcTemplate+JdbcDaoSupport实例

    ref:https://www.yiibai.com/spring/spring-jdbctemplate-jdbcdaosupport-examples.html 在Spring JDBC开发中,可 ...

  7. Python3 计算相关系数

    # -*- coding: utf-8 -*- """ Created on Mon Jan 8 19:36:48 2018 @author: markli " ...

  8. leetcode 岛屿的个数 python

      岛屿的个数     给定一个由 '1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量.一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的.你可以假设网格的四个边均被水包 ...

  9. [TC11326]ImpossibleGame

    [TC11326]ImpossibleGame 题目大意: 一类字符串仅由'A','B','C','D'四种字母组成.对于这样的一个字符串\(S\),可以用以下两种方式之一修改这个字符串: 交换\(S ...

  10. 【10.31校内测试】【组合数学】【记忆化搜索/DP】【多起点多终点二进制拆位Spfa】

    Solution 注意取模!!! Code #include<bits/stdc++.h> #define mod 1000000007 #define LL long long usin ...