以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]foxtable快递查询解决方案(快递100接口)  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=42469)

--  作者:冰31脚
--  发布时间:2013/11/12 18:25:00
--  [求助]foxtable快递查询解决方案(快递100接口)
各位好,之前在论坛朋友的引导下做了一个比较适合自己的日常使用的快递查询工具,使用的是快递100的接口,但因为使用的是API的接口方式,有很大快递公司无法查询。现在此求助,希望有哪位大神可以帮忙在我原来的基础上把API方式改成 HtmlAPI ,以实现能够满足所有对所有快递查询的实用工具
快递100有两种接口方式,API 和 HtmlAPI ,HtmlAPI支持所有的快递公司查询,API只支持部分快递公司。下面提供不同接口的文件。
案例文件
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:办公小助手.rar


此主题相关图片如下:1.png
按此在新窗口浏览图片


在此先感谢了!





--  作者:有点甜
--  发布时间:2013/11/12 19:44:00
--  
 楼主,不能指望别人帮你完成所有哦。

 api 和 htmlapi 的调用不是一样的么?就是多了中间一步,调用以后,你得到一个网址比如 http://www.kuaidi100.com/kuaidiresult?id=2411543

再访问一次这个网址,得到内容,检测里面是否有签收的内容,就可以得到结果了。

--  作者:冰31脚
--  发布时间:2013/11/12 20:22:00
--  
我尝试很久了,但做不出来,才疏学浅图片点击可在新窗口打开查看图片点击可在新窗口打开查看
--  作者:有点甜
--  发布时间:2013/11/12 20:50:00
--  
 参考下面的代码来做,得到最后的数据,再处理一下

Dim wbr As new System.Windows.Forms.WebBrowser
wbr.Navigate("http://www.kuaidi100.com/applyurl?key=a163da2878f79e28&com=yunda&nu=1900537590762")
Do Until wbr.ReadyState = 4
    Application.DoEvents
Loop
 
Dim s As String = wbr.DocumentText
Dim reg As System.Text.RegularExpressions.Regex
Dim arr() As String
arr = reg.split(s,"(<PRE>)|(</PRE>)")

wbr.Navigate(arr(2))
Do Until wbr.ReadyState = 4
    Application.DoEvents
Loop

output.show(wbr.Document.body.innertext)

[此贴子已经被作者于2013-11-13 20:16:37编辑过]

--  作者:冰31脚
--  发布时间:2013/11/13 0:08:00
--  
有点甜  可以麻烦做到案例上吗,我放进来没反应,谢谢

以下是引用有点甜在2013-11-12 20:50:00的发言:
 参考下面的代码来做,得到最后的数据,再处理一下

Dim wbr As new System.Windows.Forms.WebBrowser
wbr.Navigate("http://www.kuaidi100.com/applyurl?key=a163da2878f79e28&com=yunda&nu=1900537590762")
Do Until wbr.ReadyState = 4
    Application.DoEvents
Loop
 
Dim s As String = wbr.DocumentText
Dim reg As System.Text.RegularExpressions.Regex
Dim arr() As String
arr = reg.split(s,"(<PRE>)|(</PRE>)")

wbr.Navigate("http://www.kuaidi100.com/kuaidiresult?id=2412444")
Do Until wbr.ReadyState = 4
    Application.DoEvents
Loop

output.show(wbr.Document.body.innertext)


--  作者:baoxyang
--  发布时间:2013/11/13 8:39:00
--  

我也有这个需要,有哪位高手指点下。


--  作者:Bin
--  发布时间:2013/11/13 8:42:00
--  
4楼有点甜的代码放到命令窗口去执行即可.
--  作者:baoxyang
--  发布时间:2013/11/13 9:05:00
--  
请问下,arr = reg.split(s,"(<PRE>)|(</PRE>)") ,这个在代码中没有起用。
中网址如何获取。谢指点!

--  作者:Bin
--  发布时间:2013/11/13 9:12:00
--  
运行不是正常的嘛
--  作者:baoxyang
--  发布时间:2013/11/13 10:00:00
--  

wbr.Document.body.innertext显示内容,能实现如下结果么:

返回结果说明

字段名称 字段含义
Message 消息体
Data 数据集合
Time 每条数据的时间
Context 每条数据的状态
state 快递单当前的状态 。0:在途中,1:已发货,2:疑难件,3: 已签收 ,4:已退货。该状态还在不断完善中,有更多的参数需求,欢迎发邮件至 kuaidi@kingdee.com 提出
status 查询的结果状态。0:运单暂无结果,1:查询成功,2:接口出现异常,408:验证码出错(仅适用于APICode url,可忽略) 。遇到其他情况,请按获得身份授权key的邮件中的方法获得技术支持。