zoukankan      html  css  js  c++  java
  • delphi中使用webbrowser提交表单

    转自:http://blog.163.com/hehaifeng1984@126/blog/static/6900113620133504644998/

    我们以百度搜索为例,使用webbrowser组件自动在表单中填写信息,并提交出去。

    首先从百度首页源代码中寻找表单信息,最关键的信息如下:

    <formname="f"action="">

    <input type="text"name="wd"id="kw"maxlength="100"class="s_ipt">

    <inputtype="submit"value="百度一下"id="su" ></form>

       可以看到,百度的搜索表单的Name参数值是“f”,只有一个字母。而文本输入框的名字叫wd。我们只要设置wd的值就可以自动填写表单了。

       在窗体中拖一个WebBrowser组件和两个按钮组件,按钮1填写表单,按钮2提交数据,在窗口载入时打开百度首页:

    procedure TForm1.FormCreate(Sender: TObject);
    begin
      webbrowser1.Navigate('http://www.baidu.com');
    end;


    procedure TForm1.BitBtn1Click(Sender: TObject);
    var  o:OleVariant;
    begin
     o := WebBrowser1.OleObject.document.all.item( 'wd',0); //找到输入框
     o.value := '凌云阁';
    end;
    procedure TForm1.BitBtn2Click(Sender: TObject);
    var o:OleVariant;
    begin
      o:=WebBrowser1.oleobject.document.all.item('f',0);   //提交数据
      o.submit;
    end;

    上面的代码中,我们事先已经知道了表单和输入框的名字,使用WebBrowser1.OleObject.document.all.item( 'wd',0)找到输入框对象,用value方法输入数据。

    由于百度的提交数据按钮没有name属性,只能利用表单的name属性,采用提交表单的方式提交。我们使用WebBrowser1.oleobject.document.all.item('f',0)找到表单对象。然后用sumit方法提交。

  • 相关阅读:
    d3的一些总结
    NPashaP的二分图源码部分
    python的web服务器
    d3碰撞源码分析
    测试cnblog文章内部JS
    仿淘宝 vue
    webpack散记---代码分割 和 懒加载
    webpack散记---提取公共代码
    webpack散记--Typescript
    webpack随笔2--编译ES6/ES7
  • 原文地址:https://www.cnblogs.com/tc310/p/4708542.html
Copyright © 2011-2022 走看看