微信公众平台消息接口开发(33)智能快递查询
微信公众平台开发 微信公众平台开发者 微信公众平台开发模式 智能快递单号查询 自动识别快递单号
作者:方倍工作室
原文:http://www.cnblogs.com/txw1958/archive/2013/06/02/weixin-if33-intelligent-express.html
一、智能快递查询
在目前的快递查询中,我们一般需要输入1.快递公司,2快递单号这样两项来进行查询,这个过程中,需要输入两次。
如果我们能自动智能识别快递单号是哪家快递公司的,这样就可以减少一次输入,用户也可以不用再去输入快递公司名称,因为汉字+单号的匹配规则变化性比较大,有时用户输入正确了快递公司名称,但由于与后台程序规则设置的不一致,也还是查询失败。而单纯的数字输入就不会有这样的问题。
二、相同单号
如何处理同一单号可能对应的多家快递公司?
按照80/20原则,我们第一阶段目前只支持最常用的快递公司,这或许就已经包括了80%的查询情况
EMS、顺丰快递、申通快递、圆通快递、韵达快递、中通快递、速尔快递、汇通快递、天天快递、德邦物流、宅急送。
在后续的开发中,将尽可能的支持更多的快递公司。这其中涉及到一个问题就是匹配规则的建立,这需要拥有大量的数据,并从中挖掘出规律。或者能有很强的关系,能拿到各家快递公司的单号生成规则。
三、快递单号规则
我们收集到的快递单号规则:
申通单号由12位数字组成,目前常见以88*、36*、58*, 468*及26*等开头,LP开头的不是申通快递单号
圆通单号由10位数字组成,目前常见以1**、2**、8**等开头
中通单号由12位数字组成,目前常见以6800**、2008**等开头
韵达单号由13位数字组成,目前常见以12*、10*等开头
顺丰单号由12位数字组成,目前常见以电话区号后三位开头
联昊通物流单号由12位数字组成,目前常见以5*、6*等开头
申通单号由12位数字组成,常见以268**、368**、58**等开头
EMS单号由13位字母和数字组成,开头和结尾二位是字母,中间是数字
顺丰单号由12位数字组成,常见以电话区号后三位开头
圆通单号由10位字母数字组成,常见以1*、2*、6*、8*、D*及V*等开头
中通单号由12位数字组成,常见以2008**、6**、010等开头
韵达单号由13位数字组成,常见以10*、12*、19*等开头
天天单号由14位数字组成,常见以6**、5*、00*等开头
汇通快递查询单号由13位数字编码组成,常见以0*或者B*、H*开头
速尔的快递单号由12位数字组成的
德邦的货运单号现在是以1或2开头的8位数字组成
宅急送单号由10位数字组成,常见以7**、6**、5**等开头
智能快递查询接口
number:快递单号 http://api100.duapp.com/expressauto/?appkey=trialuser&number=3143490877 备注:支持EMS,申通快递,圆通快递,中通快递,汇通快递,天天快递,韵达快递,顺丰快递,宅急送,速尔快递,德邦物流,联昊通物流,全峰快递,中国邮政
四、效果演示
五、下一步
下一步我们将实现更智能、更强大的,使用图片识别快递单号,并且查询快递结果,以下是演示效果
同时还可以在微信中显示快递到达哪个途中哪个地方了,下面图片来源于网络
本文完整代码在 《微信公众平台开发最佳实践》 一书中有提供。
=============================================================
关注方倍工作室
扫描二维码:
本文来自博客园,作者:方倍工作室,转载请注明原文链接:https://www.cnblogs.com/txw1958/archive/2013/06/02/weixin-if33-intelligent-express.html