zoukankan      html  css  js  c++  java
  • C#实现自动填表

    如果有个如下index.tml文档:
    <html>
    <body>
    <FORM name="f"    action="http://www.baidu.com/s?wd=">
    <INPUT id="kw" name="wd" >
    <INPUT id="sb" value="搜索" type="submit">
    </FORM>
    </body>
    </html>

    代码实现:
                窗体装载事件中写入后面这条语句:   webBrowser1.Navigate(@"*:\*\index.html");

                在webBrowser1_DocumentCompleted事件或按钮事件中写入下面语句:
                HtmlDocument doc = webBrowser1.Document; //获取document对象
                HtmlElement btn = null;
                foreach (HtmlElement em in doc.All) //轮循
                {
                    string str = em.Id;
                                    if ((str == "kw") || str == "sb") //减少处理
                    {
                        switch (str)
                        {
                            case "kw": em.SetAttribute("value", "自动填表"); break; //填表
                            case "sb": btn = em; break;
                            default: break;
                        }
                    }
                }
                webBrowser1.Document.All["sb"].InvokeMember("Click");//提交 , 或 下面语句
                //btn.InvokeMember("click"); //触发submit事件
                //因为submit不是C#提供的常用的已注册事件,所以不能够通过RaiseEvent直接调用。
                //通过AttachEventHandler("submit",new EventHandler(fun))给form添加事件处理函数fun,
                //然后在fun中用InvokeMember方法调用页面中的响应函数,不过这样可能就不能
                //submit页面到form的action定义的url了
  • 相关阅读:
    pythone 请求响应字典
    python strip()
    python,datetime
    How Flask Routing Works
    python __file__ 与argv[0]
    Python的zip函数
    Python中的__new__()方法与实例化
    python,dict的setdefault方法
    python yield
    python with用法
  • 原文地址:https://www.cnblogs.com/linmilove/p/1500876.html
Copyright © 2011-2022 走看看