自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。

最近单位做了一个考勤系统,要求按时登陆一个网址考勤的签到和签退。为了方便,自己做了一个定时考勤的***。其中的核心原理就是用WinForm内嵌浏览器,自动浏览考勤地址,完成后分析考勤页面的源代码, 利用 .net 的 IHTMLDocument2  对象提取其中的Form,然后自动提交。以下是示例:

自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。 //axWebBrowser1_DocumentComplete是在浏览器完成下载源码后自动调用的方法。
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。

自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。  
private void axWebBrowser1_DocumentComplete(object sender,AxSHDocVw.DWebBrowserEvents2_DocumentCompleteEvent e)
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。  
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。{
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。   IHTMLDocument2 HTMLDocument 
=(IHTMLDocument2) axWebBrowser1.Document;
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。   IHTMLElementCollection myforms 
= HTMLDocument.forms;
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。   
foreach (HTMLFormElementClass el in myforms)
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。   
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。{
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。    
if(el.action == "index.asp")
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。    
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。{
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。     el.action 
= "index.asp?t1=XXXX&t2=YYYYY";
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。     el.submit();
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。    }

自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。   }

自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。
自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。  }

自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。



程序运行预览:

自动分析网页内容,提取FORM后自动提交,可以突破防止本地提交的程序。


有个问题:如果我提交的时候想给某个FORM里的文本text赋值,而不是像现在提交到时候用url参数传递,想直接付给文本框值,应该怎么做呢?

转载于:https://www.cnblogs.com/qdwolf/archive/2005/01/19/94006.html