C#论坛-玄机论坛-C#论坛-玄机宝盒-玄机类库-C#

 找回密码
 关闭注册

QQ登录

只需一步,快速开始

查看: 29904|回复: 115

[剑走偏锋] 快递单号查询/非接口/免API/自动识别快递类型

  [复制链接]
佐佑 发表于 2015-2-26 18:12:48 | 显示全部楼层 |阅读模式

玄机论坛-专业的C#交流论坛 交流QQ群: 16885911
如有疑问,请加入官方群询问

您需要 登录 才可以下载或查看,没有帐号?关闭注册

x
首先感谢快递100提供的快递单号查询平台

但是接口什么的限制挺大的,所以呢我就抓包分析了一下查询的流程。
下面提供抓包思路和实现方法,暂时没时间去封装成类库,有时间会回来补上的,进入正题。
首先访问
http://www.kuaidi100.com/autonumber/auto?num=快递单号
返回
[mw_shl_code=javascript,true][
    {
        "comCode": "yunda",
        "id": "",
        "noCount": 613958,
        "noPre": "3100",
        "startTime": ""
    },
    {
        "comCode": "huitongkuaidi",
        "id": "",
        "noCount": 4179,
        "noPre": "3100",
        "startTime": ""
    },
    {
        "comCode": "bpostinter",
        "id": "",
        "noCount": 207,
        "noPre": "3100",
        "startTime": ""
    },
    {
        "comCode": "ems",
        "id": "",
        "noCount": 30,
        "noPre": "3100",
        "startTime": ""
    },
    {
        "comCode": "tnt",
        "id": "",
        "noCount": 20,
        "noPre": "3100",
        "startTime": ""
    }
][/mw_shl_code]

上面的数据是查询框的下拉数据,也就是快递100的物流单号猜想,取出"comCode"的值,按顺序从上往下List<string>储存起来备用

接下来访问
http://www.kuaidi100.com/query?type=快递类型&postid=快递单号
返回
[mw_shl_code=javascript,true]{
    "nu": "3100200998006",
    "message": "ok",
    "companytype": "yunda",
    "ischeck": "1",
    "com": "yunda",
    "updatetime": "2015-02-26 17:53:17",
    "status": "200",
    "condition": "F00",
    "codenumber": "3100200998006",
    "data": [
        {
            "time": "2015-02-06 17:18:55",
            "context": "到达:湖南郴州公司 由 图片 签收",
            "ftime": "2015-02-06 17:18:55"
        },
        {
            "time": "2015-02-06 16:39:33",
            "context": "到达:湖南郴州公司 指定:黄鹏(18175732267) 派送",
            "ftime": "2015-02-06 16:39:33"
        },
        {
            "time": "2015-02-06 11:11:08",
            "context": "到达:湖南郴州公司 指定:黄鹏(18175732267) 派送",
            "ftime": "2015-02-06 11:11:08"
        },
        {
            "time": "2015-02-06 10:18:46",
            "context": "到达:湖南郴州公司 上级站点:湖南长沙分拨中心 发往:",
            "ftime": "2015-02-06 10:18:46"
        },
        {
            "time": "2015-02-05 17:09:20",
            "context": "到达:安徽巢湖公司 由 图片 签收",
            "ftime": "2015-02-05 17:09:20"
        },
        {
            "time": "2015-02-05 16:39:26",
            "context": "到达:湖南长沙分拨中心 发往:湖南郴州分拨点",
            "ftime": "2015-02-05 16:39:26"
        },
        {
            "time": "2015-02-04 19:55:25",
            "context": "到达:湖南长沙分拨中心 上级站点:",
            "ftime": "2015-02-04 19:55:25"
        },
        {
            "time": "2015-02-04 19:54:44",
            "context": "到达:湖南长沙分拨中心 上级站点:上海分拨中心",
            "ftime": "2015-02-04 19:54:44"
        },
        {
            "time": "2015-02-03 21:50:19",
            "context": "到达:上海分拨中心 发往:湖南长沙分拨中心",
            "ftime": "2015-02-03 21:50:19"
        },
        {
            "time": "2015-02-03 21:47:51",
            "context": "到达:上海分拨中心",
            "ftime": "2015-02-03 21:47:51"
        },
        {
            "time": "2015-02-03 19:51:04",
            "context": "到达:上海松江区新桥公司阿芙化妆品淘宝服务部 已收件",
            "ftime": "2015-02-03 19:51:04"
        },
        {
            "time": "2015-02-03 19:01:45",
            "context": "到达:上海松江区新桥公司阿芙化妆品淘宝服务部 发往:湖南长沙分拨中心",
            "ftime": "2015-02-03 19:01:45"
        },
        {
            "time": "2015-02-03 18:45:02",
            "context": "到达:上海松江区新桥公司阿芙化妆品淘宝服务部 已收件",
            "ftime": "2015-02-03 18:45:02"
        }
    ],
    "state": "3"
}[/mw_shl_code]
访问参数的快递类型就是上面的comcode,猜想从第一个开始访问测试,如:yunda,返回的数据status值为200则说明查询成功,如果非200则跳过第一个猜想comcode值,用下一个comcode值再次访问得到结果,依次推类。

为官网对返回数据的解释,有出处自行取舍:
字段名称
  字段含义
com
物流公司编号
nu
物流单号
time
每条跟踪信息的时间
context
每条跟综信息的描述
state
快递单当前的状态 : 
0:在途,即货物处于运输过程中;
1:揽件,货物已由快递公司揽收并且产生了第一条跟踪信息;
2:疑难,货物寄送过程出了问题;
3:签收,收件人已签收;
4:退签,即货物由于用户拒签、超区等原因退回,而且发件人已经签收;
5:派件,即快递正在进行同城派件;
6:退回,货物正处于退回发件人的途中;


status
查询结果状态:
0:物流单暂无结果,
1:查询成功,
2:接口出现异常,
message
无意义,请忽略
condition
无意义,请忽略
ischeck
无意义,请忽略


到这里基本上就结束了,剩下的就是对数据的处理了。

玄机论坛-专业的C#交流论坛 交流QQ群: 16885911
帖子内网盘失效后请使用下面地址

http://bbs.msdn5.com/forum.php?mod=viewthread&tid=1218
如果失效请联系站长重新分享
回复

使用道具 举报

 楼主| 佐佑 发表于 2015-2-26 18:13:25 | 显示全部楼层
占位编辑,如果以上的抓包有变动还请私信我,我好修改本帖
以后有时间封装类库会在本楼层更新出文件
玄机论坛-专业的C#交流论坛 交流QQ群: 16885911
帖子内网盘失效后请使用下面地址

http://bbs.msdn5.com/forum.php?mod=viewthread&tid=1218
如果失效请联系站长重新分享
回复 支持 反对

使用道具 举报

undead 发表于 2015-2-26 18:14:24 | 显示全部楼层
18911960271
玄机论坛-专业的C#交流论坛 交流QQ群: 16885911
帖子内网盘失效后请使用下面地址

http://bbs.msdn5.com/forum.php?mod=viewthread&tid=1218
如果失效请联系站长重新分享
回复 支持 反对

使用道具 举报

inghot 发表于 2015-2-26 18:14:28 | 显示全部楼层
这么厉害。。。
玄机论坛-专业的C#交流论坛 交流QQ群: 16885911
帖子内网盘失效后请使用下面地址

http://bbs.msdn5.com/forum.php?mod=viewthread&tid=1218
如果失效请联系站长重新分享
回复

使用道具 举报

我来拾豆豆 发表于 2015-2-26 18:18:15 | 显示全部楼层
就是厉害!
玄机论坛-专业的C#交流论坛 交流QQ群: 16885911
帖子内网盘失效后请使用下面地址

http://bbs.msdn5.com/forum.php?mod=viewthread&tid=1218
如果失效请联系站长重新分享
回复

使用道具 举报

zhangpan0912 发表于 2015-2-26 18:24:20 | 显示全部楼层
貌似很牛逼,看看。。。
玄机论坛-专业的C#交流论坛 交流QQ群: 16885911
帖子内网盘失效后请使用下面地址

http://bbs.msdn5.com/forum.php?mod=viewthread&tid=1218
如果失效请联系站长重新分享
回复 支持 反对

使用道具 举报

milest 发表于 2015-2-26 19:57:03 | 显示全部楼层
看看··························
玄机论坛-专业的C#交流论坛 交流QQ群: 16885911
帖子内网盘失效后请使用下面地址

http://bbs.msdn5.com/forum.php?mod=viewthread&tid=1218
如果失效请联系站长重新分享
回复 支持 反对

使用道具 举报

speed2018 发表于 2015-2-26 19:59:14 | 显示全部楼层
感觉很强大
玄机论坛-专业的C#交流论坛 交流QQ群: 16885911
帖子内网盘失效后请使用下面地址

http://bbs.msdn5.com/forum.php?mod=viewthread&tid=1218
如果失效请联系站长重新分享
回复 支持 反对

使用道具 举报

jacklp 发表于 2015-2-26 20:29:14 | 显示全部楼层
RE: 快递单号查询/非接口/免API/自动识别快递类型 [修改]
玄机论坛-专业的C#交流论坛 交流QQ群: 16885911
帖子内网盘失效后请使用下面地址

http://bbs.msdn5.com/forum.php?mod=viewthread&tid=1218
如果失效请联系站长重新分享
回复 支持 反对

使用道具 举报

暗鹰 发表于 2015-2-27 08:11:54 | 显示全部楼层
顶一下。。。。。。。。
玄机论坛-专业的C#交流论坛 交流QQ群: 16885911
帖子内网盘失效后请使用下面地址

http://bbs.msdn5.com/forum.php?mod=viewthread&tid=1218
如果失效请联系站长重新分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 关闭注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

QQ|玄机论坛

GMT+8, 2024-4-18 09:12 , Processed in 0.155196 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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