单位食堂报餐系统需要定时报名,很麻烦,于是偷懒写了个自动填写网页报餐的C#程序,参考了网上很多代码,把核心部分贴上来与大家分享
其实网页自动填写程序的原理就是用webBrowser控件将页面转为html代码并分析出相应的控件进行控制操作,和我们大家经常用的网上抢票软件是一样的,但是往往在登陆后需要进行下一步操作,所以需要等待页面加载完成的步骤.我没写过C#,这是我的第一个C#程序,最初以为只要while等待webBrowser1.ReadyState和webBrowser1.IsBusy状态即可,但后来经测试发现,空while语句是不会继续执行任何页面操作了,就卡在那里了,网上搜索后才知道,需要在while循环体内加入如下代码:
while (webBrowser1.Url.ToString() == pageUrl) { Application.DoEvents(); }
等待页面加载完成最好是判断url变化,因为如果遇到框架页(frame或iframe),每次框架页载入完成都会执行DocumentCompleted事件,所以无法确定是单一框架页载入完成还是整体页面载入完成.但此种判断只限于页面跳转的操作有效,
在循环体内
Application.DoEvents();
代码可以让程序继续执行其他的应用

本文介绍了如何使用C#编写一个自动填写网页表单的程序,以解决单位食堂报餐系统的定时报名问题。程序基于webBrowser控件,通过解析HTML代码来定位和操作页面元素。在确保页面加载完成后,利用特定的循环结构和方法实现进一步的操作。同时,文章还提及了处理弹窗确认的方法,涉及IHTMLDocument2接口的引用和添加相关工程引用。
最低0.47元/天 解锁文章
385

被折叠的 条评论
为什么被折叠?



