微信公众平台开发之如何实现快递查询

  介绍

这篇文章主要介绍了微信公众平台开发之如何实现快递查询,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。

实现方法:

1) API申请

快递100提供查询接口API,需要申请关键http://www.kuaidi100.com/openapi/applyapi.shtml

查询数量有限制,2013-11-19最多2000次/每天

申请条件之一,为快递100提供链接,在网站首页

申请了2次失败了

2)手机查询API

快递100提供手机查询API, http://www.kuaidi100.com/openapi/mobileapi.shtml

不需要申请键,免费;但是,返回结果是html,需要解析

通过simple_html_dom.php解析html,终于得到想要的结果

& lt; ? php /*   100年快递,提供的接口,返回html;   使用,simple_html_dom 解析html,得到快递结果      ,d_eng  (sh209419@163.com)   ,2013 - 11 - 20   ,*//*   天天快递查询电话:4001 - 888 - 888 - & lt; br>,,,,,,,,,,,,,, & lt; br>天天快递单号:560050137619 & lt; br>查询结果如下所示:& lt; br>·2013 - 11 - 18, 16:58:30   ,快件已到达【上海虹口一部】,,,,,,,,,,扫描员是【11】上一站是【上海集散】& lt; br>·2013 - 11 - 18, 18:46:19   ,【上海普陀二部】的收件员【高军13916321314】已收件& lt; br>·2013 - 11 - 18, 22:28:08   ,由【上海普陀二部】发往【上海集散】& lt; br>·2013 - 11 - 19, 00:38:31   ,由【上海集散】发往【上海虹口一部】& lt; br>·2013 - 11 - 19, 08:13:32   ,快件已到达【上海虹口一部】,,,,,,,,,,扫描员是【21242.1010】上一站是【上海集散】& lt; br>·2013 - 11 - 19, 08:54:45   ,【上海虹口一部】的派件员【孔明】正在派件& lt; br>·2013 - 11 - 19, 10:58:14   签,已签收,收人是【同事代签】   */头(“内容类型:text/html;, charset=utf-8");,,   包括(“simple_html_dom.php");   function 表达(公司代码)美元,{,   ,,,,//get  html=$ url “http://wap.kuaidi100.com/wap_result.jsp?rand=20120517& id=啊9久涝?”,fromWeb=null&, postid=啊C涝?   $ html=file_get_contents ($ url),或是死();//get  form 部分   $ x=爆炸(“& lt;/form>“, html美元);   $ x=爆炸(“& lt; form" $ x [0]),,   时间=美元form “& lt; form"。$ x [1] !”& lt;/form>“;//create  dom   $ dom =, str_get_html ($);//,找到所有& lt; p>   $ text =,““   foreach ($ dom→找到(& # 39;p # 39;), as 美元元素),{   if  (“text<美元;;“),text 美元;=,美元文本强生# 39;& lt; br> & # 39;;   时间=美元text 文本。元素→美元明文;   }   美元return 文本;   },      echo 表达(& # 39;申通# 39;& # 39;668711492860 & # 39;),,   echo  & # 39; & lt; br> & # 39;;   echo  & # 39; & lt; br> & # 39;;   echo 表达(& # 39;天天# 39;& # 39;560050137619 & # 39;),,   echo  & # 39; & lt; br> & # 39;;   echo  & # 39; & lt; br> & # 39;;   echo 表达(& # 39;有效# 39;& # 39;1900497688272 & # 39;),,      ?在

3)服务器要求

快递100不支持新浪SAE平台,后来试了

)移动的MMAE平台,倒是可以;但MMAE比较慢,不稳定,放弃

b)腾讯云平台,开户送了200,但是,一个月PHP + mySQL差不多要200年,放弃

c)申请百度云平台,BAE可以访问快递100年,但是,BAE不支持谷歌翻译,

好的,解决方案,微信服务程序放在英国宇航系统公司,谷歌翻译放在SAE,

微信使用谷歌翻译的时候,命令发送到微信服务程序(BAE),从BAE远程调用谷歌翻译结果(SAE)

快递调用演示做好,服务器环境建设好,开发微信程序就简单了

4)智能查询

快递查询一般都需要提供快递好和快递公司,智能查询就是在只给出快递号的情况下,智能匹配快递公司,查到记录。
智能查询的核心是匹配策略,这里在网上收集了部分:

公司名称单号长度纯数字常用   德邦8 - 10 y 1或2开的头   ems 13 n开头和结尾二位是字母,中间是数字   汇通12 - 14 n *开50头   联昊通12 y 5 * 6 *等开的头   申通12 y 1 - 9开头,268 * 368 *,58 *,,66 *等开头,,   顺丰12 y电话区号后三位开的头   速尔12 y   天6天12 y * * 5 *, 00 *等开的头   圆通10 n 1 * 2 * 6 * 8 * D *及V *等开的头   韵达13 y 10 * 12 * 19 *等开的头   中通12 y 2008 * *, * *, 010等开的头   宅急送10 y 7 * * 6 * *, 5 * *等开头

微信公众平台开发之如何实现快递查询