V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
whoisharry
V2EX  ›  分享创造

手机型号识别工具

  •  2
     
  •   whoisharry · 2018-08-07 14:20:45 +08:00 · 12743 次点击
    这是一个创建于 2291 天前的主题,其中的信息可能已经有所发展或是发生改变。

    因公司需要,开发了一个手机型号识别工具,可以根据 UserAgent 等信息自动判断手机品牌和型号。目前准确率还可以,后期可以通过不断更新特征库来提高准确率。

    大家可以测试一下: http://138.wenjuan.com/

    如果自己项目中需要使用,可以联系我。

    第 1 条附言  ·  2018-08-08 18:23:53 +08:00
    刚刚登录系统,发现不少热心网友提供了识别错误的反馈信息。对于这些反馈信息,我还需要 google 一下看看网友提供的信息是否准确,之后再去更新特征库,花了大概一个小时。大家可以再测试看看。

    由于是根据 UserAgent 来识别的,有些手机的 UA 很不规范,甚至是错误的,这种情况,就算反馈了也不会更新到系统里去。比如,未能识别出来的一个手机,网友反馈是 1 加 3T,可是看他的 UA 是这样的:
    Mozilla/5.0 (Linux; Android 8.0.0; Build/OPR1.170623.032) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Mobile Safari/537.36 ,这里没有任何特征串可以识别。

    @yxjxx 识别错误的,更可能在这里回复,大部分正确的,你看不到,所以看上去的确是车祸现场。我刚刚更新了特征库,应该会好很多了。这是 @weishu 的回复:的确是这样的,识别正确的一般不会说。我三台手机,一台 iPhone6,一台 MIX 2S,一台 Nexus 5X,均能正确识别。

    @sobigfish 提到机型显示 Apple 比 苹果 更好,已经改好了。

    @Cytion 一加 5 刷完安卓 p 后 型号就成了 pixel。
    刷完安卓 P,UserAgent 信息全变了,取不到一加的任何信息,所以。。。臣妾做不到啊!
    83 条回复    2024-01-11 15:22:32 +08:00
    cydian
        1
    cydian  
       2018-08-07 14:24:19 +08:00 via Android
    我还是好奇地点开了。
    只用了一台设备。
    网页就显示不正确了。
    没有修改过 UA,Chrome 手机。
    whoisharry
        2
    whoisharry  
    OP
       2018-08-07 14:38:25 +08:00
    不应该啊,很简单的一个页面,就算没识别出来,也不会导致页面显示不正确。我找过很多同事测试过,没有遇到你说的情况。我的手机是荣耀 V9,可以正确识别。
    tuding
        3
    tuding  
       2018-08-07 15:37:27 +08:00
    手机品牌:未知
    手机型号:未知
    wxsm
        4
    wxsm  
       2018-08-07 15:40:49 +08:00
    iphone7 正确识别。请问除了 UA 以外,还用到了什么信息呢?
    affyun
        5
    affyun  
       2018-08-07 15:53:34 +08:00 via Android
    同样是未知
    Pythondr
        6
    Pythondr  
       2018-08-07 16:01:06 +08:00 via Android
    未知
    imdong
        7
    imdong  
       2018-08-07 16:03:29 +08:00
    未知未知 魅蓝 Note6
    98jiang
        8
    98jiang  
       2018-08-07 16:04:39 +08:00
    小米 6 准确
    jayzhong
        9
    jayzhong  
       2018-08-07 16:05:31 +08:00
    我的锤子就没识别出来
    beaconfire
        10
    beaconfire  
       2018-08-07 16:06:12 +08:00

    @whoisharry 场面 一度 十分 尴尬
    littleylv
        11
    littleylv  
       2018-08-07 16:08:29 +08:00
    sony z5p
    手机品牌:未知
    手机型号:未知

    尴尬。。。
    Cytion
        12
    Cytion  
       2018-08-07 16:10:24 +08:00 via Android
    一加 5+Android P,直接识别成了 pixel

    好吧我是杠精,楼主辛苦了
    Dori
        13
    Dori  
       2018-08-07 16:30:41 +08:00
    MIX2S 识别为 MIX2
    fayloue
        14
    fayloue  
       2018-08-07 16:45:17 +08:00
    Lumia 630 识别为 苹果 iphone
    woxppooo
        15
    woxppooo  
       2018-08-07 16:48:15 +08:00
    显示荣耀 10,但其实是 nova
    easylee
        16
    easylee  
       2018-08-07 16:51:16 +08:00 via Android
    诺基亚 8 无法识别
    luob
        17
    luob  
       2018-08-07 16:57:56 +08:00
    那么问题来了,可以识别我的手机的颜色吗(逃
    alvin666
        18
    alvin666  
       2018-08-07 17:23:28 +08:00 via Android
    那么问题来了,可以识别我手机壳的颜色吗
    keventseng
        19
    keventseng  
       2018-08-07 18:00:10 +08:00
    恩,看来我的大锤子还是太小众了。
    jasonyang9
        20
    jasonyang9  
       2018-08-07 18:13:26 +08:00 via Android
    诺记 1110 无法识别
    StederLee
        21
    StederLee  
       2018-08-07 18:39:06 +08:00 via Android
    三星 S8 可以
    黑莓 Priv 未知
    seon
        22
    seon  
       2018-08-07 18:42:27 +08:00 via Android
    MIX2S 识别成 MIX2
    Baymaxbowen
        23
    Baymaxbowen  
       2018-08-07 18:44:35 +08:00 via Android
    小米 5s 识别成 5
    Sullivan
        24
    Sullivan  
       2018-08-07 20:47:15 +08:00
    坚果 3 未知
    imeilige
        25
    imeilige  
       2018-08-07 22:33:25 +08:00
    Honor8 可以
    binghe
        26
    binghe  
       2018-08-07 22:36:52 +08:00
    我的手机完全识别错误

    yxjxx
        27
    yxjxx  
       2018-08-07 22:50:06 +08:00
    堪比车祸现场
    ionblue
        28
    ionblue  
       2018-08-07 22:53:55 +08:00 via Android
    手机品牌:未知
    手机型号:未知
    donething
        29
    donething  
       2018-08-07 22:54:06 +08:00
    @beaconfire 你手机啥型号啊?看起来挺好看的
    zhouyut001
        30
    zhouyut001  
       2018-08-07 22:57:54 +08:00 via Android
    Mi5,正确的应该是 MI5S
    adyyq
        31
    adyyq  
       2018-08-07 23:04:23 +08:00 via Android
    手机品牌:
    魅族
    手机型号:
    魅蓝 metal
    Z1on
        32
    Z1on  
       2018-08-07 23:24:20 +08:00 via Android
    索尼 xz
    未知 未知
    ihacku
        33
    ihacku  
       2018-08-08 00:53:27 +08:00 via iPhone
    可以开源出来大家帮忙校正一下?
    zhanao1994
        34
    zhanao1994  
       2018-08-08 01:18:34 +08:00 via Android
    荣耀 9 识别成荣耀 8,误差很小😂
    ke5211314
        35
    ke5211314  
       2018-08-08 04:06:41 +08:00
    我也 识别错误 小米 8
    sdshdv
        36
    sdshdv  
       2018-08-08 04:42:23 +08:00 via Android
    我的 pixel xl 识别成了 pixel 也算是个小错误
    mozutaba
        37
    mozutaba  
       2018-08-08 06:32:28 +08:00
    @wxsm 通过计算网页请求耗时+渲染时间来识别机型
    gary36
        38
    gary36  
       2018-08-08 08:03:30 +08:00 via Android
    和浏览器也有关系,一个识别出来了另一个浏览器没有识别出来
    inhzus
        39
    inhzus  
       2018-08-08 08:34:25 +08:00 via Android
    华为 p9,最低配版识别为高配版
    beaconfire
        40
    beaconfire  
       2018-08-08 08:43:39 +08:00
    @donething 跳水冠军魅族 PRO7[手动滑稽]
    innoink
        41
    innoink  
       2018-08-08 08:49:22 +08:00 via Android
    用 Firefox 打开,未知
    用自带浏览器打开,请使用安卓或 iPhone 手机打开本页面
    donething
        42
    donething  
       2018-08-08 08:51:01 +08:00
    @beaconfire 魅族。。[再见]
    gbin
        43
    gbin  
       2018-08-08 08:56:53 +08:00 via Android
    小米 Note 3 正常。

    @wxsm 我感觉除了 UA 还用了 navigator.appVersion
    WuwuGin
        44
    WuwuGin  
       2018-08-08 09:14:05 +08:00
    sony 手机被开除手机籍系列
    Hydjan
        45
    Hydjan  
       2018-08-08 09:15:43 +08:00 via Android
    未知,未知
    opengps
        46
    opengps  
       2018-08-08 09:18:32 +08:00
    ua 不可靠,我这里有 2 万多条不重复的 ua,你要不要测试下
    LeungJZ
        47
    LeungJZ  
       2018-08-08 09:27:31 +08:00
    尴尬,浏览器一直用的是 iPhone 的 UA。
    https://ww3.sinaimg.cn/large/005YhI8igy1fu21axnawbj30u01rcabf
    carolhai
        48
    carolhai  
       2018-08-08 09:32:51 +08:00
    我的就中了,一加,一加 5T
    zj299792458
        49
    zj299792458  
       2018-08-08 09:34:38 +08:00 via iPhone
    抽奖现场么。话说这么多手机型号都是人工采集的?
    yws112358
        50
    yws112358  
       2018-08-08 10:04:19 +08:00
    用 chrome 模拟 识别为手机? 这个算准确吗? ipad 貌似不识别
    sobigfish
        51
    sobigfish  
       2018-08-08 12:54:23 +08:00
    可以把苹果改为 Apple 么-。-
    wanwaneryide
        52
    wanwaneryide  
       2018-08-08 15:26:30 +08:00
    用电脑端,改了改 UserAgent,一样能访问
    conwey
        53
    conwey  
       2018-08-08 15:52:43 +08:00
    识别还算得上准确。
    whoisharry
        54
    whoisharry  
    OP
       2018-08-08 15:55:56 +08:00
    刚刚登录系统,发现不少热心网友提供了识别错误的反馈信息。对于这些反馈信息,我还需要 google 一下看看网友提供的信息是否准确,之后再去更新特征库,花了大概一个小时。大家可以再测试看看。

    由于是根据 UserAgent 来识别的,有些手机的 UA 很不规范,甚至是错误的,这种情况,就算反馈了也不会更新到系统里去。比如,未能识别出来的一个手机,网友反馈是 1 加 3T,可是看他的 UA 是这样的:
    Mozilla/5.0 (Linux; Android 8.0.0; Build/OPR1.170623.032) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Mobile Safari/537.36 ,这里没有任何特征串可以识别。
    whoisharry
        55
    whoisharry  
    OP
       2018-08-08 15:58:28 +08:00
    @wxsm iPhone 机型的识别,根据 UA 是不够的,还用到了 CPU 运算速度,屏幕大小,分辨率这几个参数。
    whoisharry
        56
    whoisharry  
    OP
       2018-08-08 16:01:11 +08:00   ❤️ 1
    @yxjxx 识别错误的,更可能在这里回复,大部分正确的,你看不到,所以看上去的确是车祸现场。我刚刚更新了特征库,应该会好很多了。
    whoisharry
        57
    whoisharry  
    OP
       2018-08-08 16:02:50 +08:00
    @opengps 对于安卓手机,除了 UA 可以利用之外,想不到有其他办法。其实只要 UA 稍微规范一点,识别率还是可以满足要求的。
    whoisharry
        58
    whoisharry  
    OP
       2018-08-08 16:03:25 +08:00
    @conwey 多谢鼓励!
    greed1is9good
        59
    greed1is9good  
       2018-08-08 16:09:52 +08:00
    其实就是看浏览器能不能识别手机型号。这个页面只是提取浏览器提交的 ua 中手机型号信息。
    whoisharry
        60
    whoisharry  
    OP
       2018-08-08 16:17:18 +08:00
    @wanwaneryide 是的,你修改了 UA,就会识别错误
    whoisharry
        61
    whoisharry  
    OP
       2018-08-08 16:19:11 +08:00
    @opengps 我会尽量把它做的可靠。只有 UA 数据,并不能帮到我,因为你不能告诉我识别结果是对还是错。
    SuT2i
        62
    SuT2i  
       2018-08-08 16:36:08 +08:00
    正确
    lrzsw2008
        63
    lrzsw2008  
       2018-08-08 16:52:28 +08:00 via Android
    黑莓 keyone 未知 尴尬.lz 有心回头可以告诉我几台 keyone
    ShuoHui
        64
    ShuoHui  
       2018-08-08 16:54:30 +08:00 via Android
    pixel 识别正常
    initdrv
        65
    initdrv  
       2018-08-08 16:56:30 +08:00 via iPhone
    识别准确,赞! iPhone 6
    dream7758522
        66
    dream7758522  
       2018-08-08 17:16:50 +08:00 via Android
    @whoisharry 能否同时显示出 ua
    whoisharry
        67
    whoisharry  
    OP
       2018-08-08 17:19:43 +08:00
    @lrzsw2008 现在可以了,您再试试看?
    weishu
        68
    weishu  
       2018-08-08 17:24:48 +08:00   ❤️ 1
    @whoisharry 的确是这样的,识别正确的一般不会说。我三台手机,一台 iPhone6,一台 MIX 2S,一台 Nexus 5X,均能正确识别。
    whoisharry
        69
    whoisharry  
    OP
       2018-08-08 17:25:29 +08:00
    @sobigfish 感觉 Apple 比苹果更好是吗?可以改,已经改好了。
    whoisharry
        70
    whoisharry  
    OP
       2018-08-08 17:55:42 +08:00
    @dream7758522 这个很容易,但是这个需求提的人不多,暂时不会加上去,抱歉。
    whoisharry
        71
    whoisharry  
    OP
       2018-08-08 17:57:01 +08:00
    @weishu 嗯,谢谢鼓励!
    CHN
        72
    CHN  
       2018-08-08 17:59:53 +08:00
    你们还是和之家基佬寻求合作吧
    CHN
        73
    CHN  
       2018-08-08 18:00:14 +08:00
    @beaconfire 请问你这个什么手机
    Level6
        74
    Level6  
       2018-08-08 18:13:05 +08:00
    @Cytion 一加 5 刷完安卓 p 后 型号就成了 pixel
    whoisharry
        75
    whoisharry  
    OP
       2018-08-08 18:17:40 +08:00
    @Level6 刷完安卓 P,UserAgent 信息全变了,取不到一加的任何信息,所以。。。臣妾做不到啊!
    beaconfire
        76
    beaconfire  
       2018-08-09 08:50:23 +08:00
    @CHN 跳水冠军魅族 PRO7[手动滑稽]
    dewi
        77
    dewi  
       2018-08-09 11:07:02 +08:00
    ChromeF12 显示的是 Google Nexus 5
    bilibiliQQ
        78
    bilibiliQQ  
       2018-08-12 08:56:13 +08:00
    可以通过 javascript 获取机身 IMEI,然后通过 IMEI 去数据库中调取对应的手机型号这样比较准。
    demo
    whoisharry
        79
    whoisharry  
    OP
       2018-08-13 12:58:38 +08:00
    @bilibiliQQ

    "可以通过 javascript 获取机身 IMEI",这个,真的可以吗?好像做不到吧。
    15313029517
        80
    15313029517  
       2018-10-02 04:59:08 +08:00 via Android
    @jayzhong 我是坚果 R1,显示锤子。哈哈哈,只显示品牌。
    zhouluo
        81
    zhouluo  
       2018-12-08 19:57:30 +08:00
    你好,可以给一些资料信息吗?对这个比较感兴趣。
    whoisharry
        82
    whoisharry  
    OP
       2022-12-10 12:21:15 +08:00
    4 年了,手机型号库持续更新中。
    顶起来,给有需要的人!
    tianmingrui
        83
    tianmingrui  
       308 天前
    @whoisharry 您好,刚好有这个需求,如何联系
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1370 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 17:44 · PVG 01:44 · LAX 09:44 · JFK 12:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.