主题:要求使用VFP 9.0 实现以下动作
xilaianzxsc
[专家分:20] 发布于 2010-08-18 10:19:00
要求使用VFP 9.0 实现以下动作:
1 自动登录 http://www.lzk.hl.cn/ptgk/default.asp
2 在"准考证号"处,自动填入"1234567890"
3 在"考生姓名"处,自动填入"张三"
4 程序自动点击"查询"
这个过程,我已经研究一周了.到现在为止,还没有结果.
请高手赐教!!!
回复列表 (共6个回复)
沙发
liupeisong [专家分:2340] 发布于 2010-08-18 11:11:00
http://www.aspx1.com/h/2009/1113/2310.html
http://www.tzwhx.com/newOperate/html/1/12/121/8043.html
这些是网上找到的,不过是C#的,估计VF的不好找,但是原理是一样的。
基本思路是这样的:VF表单中可以嵌入一个IE的activex控件,利用它打开楼主那个网页,根据事先分析网页代码得到的准考证号和考生姓名两处位置(这个位置通过IE的activex控件进行引用)使用程序设置其值,点击查询那个可以分析原来点击了是如何post的,直接POST就行了
再具体的也别问了,我也没有做过这种程序
板凳
liupeisong [专家分:2340] 发布于 2010-08-18 11:20:00
http://bbs.pfan.cn/post-237442-2.html
这个比较接近你的要求了
3 楼
liupeisong [专家分:2340] 发布于 2010-08-18 11:25:00
http://www.meizvfp.com/bbs/dispbbs.asp?BoardID=2&replyID=35647&id=85031&skin=0
这个好象是最接近的填表的东东了,只差提交部分了
下面是包含了提交的(就是有一个问题:没有判断网页下载是否完成)
ox=createobject('INTERNETEXPLORER.APPLICATION')
url="http://www.ancc.org.cn/Service/Tools/FirmAffiche_Query.aspx"
ox.visible=.t.
ox.Navigate("&url")
DO WHILE ox.ReadyState<>4
doevents
ENDDO
*ox.document.form1.Txt_code.value="3302"
ox.document.form1.Txt_name.value="宁波"
ox.document.form1.DDL_Date.value="4"
ox.document.form1.Btn_Query.click
4 楼
Vii [专家分:1130] 发布于 2010-08-19 13:44:00
我已经在BCCN回复LZ了,就下面这样:
clear
loInternet=Createobject("MSXML2.ServerXMLHTTP")
loInternet.Open([POST],[http://www.lzk.hl.cn/ptgk/default.asp])
loInternet.setRequestHeader([Content-Type],[application/x-www-form-urlencoded]) &&数据格式要指定,否则没有结果。
loInternet.Send('zkzh=0123789&ksxm=%D5%C5%C8%FD') &&张三转为URL编码提交。
If loInternet.READYSTATE = 4 .And. loInternet.Status = 200
?STRCONV(STRCONV(loInternet.responseBody,9),11)
ENDIF
&&没有正确准考证号和姓名,无法给你验证。
5 楼
xilaianzxsc [专家分:20] 发布于 2010-08-19 14:00:00
3楼的答案,符合我的要求
6 楼
xilaianzxsc [专家分:20] 发布于 2010-08-19 15:47:00
共在4个论坛里,问了同一个问题.
结果,仅在此论坛里得到了满意的答案.
在此,再一次感谢各位老师,再一次祝愿"编程爱好者论坛"越办越好!
我来回复