delphi如何用webbrowser模拟登录网站?

我们就以如何登录博客园来做示例:

1.要登入一个网站,首先要获取网页的源代码,我们可以通过网页菜单--查看--查看源代码来获取。

2.我们找到登录部分的代码:

                        <div id="Heading">登录到博客园 &nbsp;<a href="/register.aspx?ReturnUrl=http://home.cnblogs.com/" title="注册成为博客园用户">立即注册</a></div>

                        <label class="MyLabel">用户名</label>

                        <div class="line"><input name="tbUserName" type="text" id="tbUserName" class="Textbox" />&nbsp;<a href="/GetUsername.aspx" tabindex="-1" class="tb_right">找回用户名</a></div>

                        <span id="Required_UserName" style="color:Red;visibility:hidden;">用户名不能为空</span>

                        <label class="MyLabel">密码</label>

                        <div class="line"><input name="tbPassword" type="password" id="tbPassword" class="Textbox" /> <a href="/GetMyPassword.aspx" tabindex="-1" class="tb_right">找回密码</a></div>

                        <span id="Required_Password" style="color:Red;visibility:hidden;">密码不能为空</span>                        

                        <div>

                        <span class="chk"><input id="chkRemember" type="checkbox" name="chkRemember" /><label for="chkRemember">保存密码</label></span><br />

                        <input type="submit" name="btnLogin" value="登  录" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;btnLogin&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, false))" id="btnLogin" class="Button"
style="margin-top: 8px" />

因为这个网页是不含框架的,所以可以直接获取到源代码,如果含有框架的网页,后续会讲到如何获取含框架的网页源代码。

3.加入我们已经有用户了,没有的话可以申请个做测试用,我们登录就是输入账号密码点击登录就可以了。

代码如下:

webbrowser1.OleObject.document.all.item('tbUserName').value := '你的用户名';

webbrowser1.OleObject.document.all.item(tbPassword).value := '你的密码;

webbrowser1.OleObject.document.all.item(chkRemember).Click;

这样一个网站简单的登录就实现了,后面我再介绍更多模拟登录的方法和含有框架的登录方法。

转载请注明出处,谢谢!

Delphi Webbrowser使用方法详解(二)的更多相关文章

  1. Delphi Webbrowser使用方法详解

    1.webbroser介绍 该组件是一个浏览器组件,可以显示一个指定地址的网页.设置网页打开时的主页以及对网页进行相关的操作,同时也可以对HTML文件进行剪切.复制.粘贴.删除等操作.该 组件在Int ...

  2. Delphi Webbrowser使用方法详解(一)

    1.webbroser介绍 该组件是一个浏览器组件,可以显示一个指定地址的网页.设置网页打开时的主页以及对网页进行相关的操作,同时也可以对HTML文件进行剪切.复制.粘贴.删除等操作.该 组件在Int ...

  3. Java构造和解析Json数据的两种方法详解二

    在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面接着介绍用org.json构造和解析Jso ...

  4. Java构造和解析Json数据的两种方法详解二——org.json

    转自:http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/24/3096437.html 在www.json.org上公布了很多JAVA下的jso ...

  5. Java构造和解析Json数据的两种方法详解一——json-lib

    转自:http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/23/3096001.html 在www.json.org上公布了很多JAVA下的jso ...

  6. Delphi中TStringList类常用属性方法详解

    TStrings是一个抽象类,在实际开发中,是除了基本类型外,应用得最多的. 常规的用法大家都知道,现在来讨论它的一些高级的用法. 先把要讨论的几个属性列出来: 1.CommaText 2.Delim ...

  7. “全栈2019”Java多线程第十二章:后台线程setDaemon()方法详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  8. java多线程并发(二)--线程的生命周期及方法详解

    上篇随笔介绍了线程的相关基础知识以及新启线程的几种方法,本片将继续介绍线程的生命周期及方法详解. 一.线程的生命周期 在Thread代码中,线程的状态被分为6种 public enum State { ...

  9. MP实战系列(十二)之封装方法详解(续二)

    继续MP实战系列(十一)之封装方法详解(续一)这篇文章之后. 此次要讲的是关于查询. 查询是用的比较多的,查询很重要,好的查询,加上索引如鱼得水,不好的查询加再多索引也是无济于事. 1.selectB ...

随机推荐

  1. Python学习(003)-列表[]

    列表[] a=['张帅','李四','王五','陈六','黄旗'] print(a[2])    王五 print(a[1:3])   ['李四','王五']  左包含,右不包含 print(a[1: ...

  2. videojs 隐藏videobar

    video::-internal-media-controls-download-button { display: none; } video::-webkit-media-controls-enc ...

  3. promise的生命周期

    每个promise都会经历一个短暂的生命周期: 先是处于进行中(pending)状态,此时操作并未完成,所以他也是未处理的(unsettled): 一旦异步惭怍执行结束,promise则 变为已处理( ...

  4. I.MX6 Linux Serial Baud Rate hacking

    /******************************************************************************** * I.MX6 Linux Seri ...

  5. 网络流--最大流ek模板

    标准大白书式模板,代码简单但由于效率并不高,所以并不常用,就是这样 #include<stdio.h> #include<string.h> #include<queue ...

  6. 在Docker中运行crontab

    在把自己的项目通过Docker进行打包时,由于项目中用到了crontab,不过使用到的基础镜像python:3.6-slim并没有安装这项服务,记录下在镜像中安装和配置crontab的过程. Dock ...

  7. 走进windows编程的世界-----消息处理函数(1)

    Win32消息机制     过程驱动:程序是依照我们预先定义好的顺序运行.每运行一步,下一步都已经依照预定的顺序 继续运行,直至程序结束.     事件驱动:程序的运行顺序是无序的.某个时间点所运行的 ...

  8. BatSendMail

    @echo off echo ==================================echo == Compress Files And Send Mail ==echo ======= ...

  9. velocity 知识点

    velocity 教程: http://www.51gjie.com/javaweb/126 velocity 语法 语法 说明 关键字以#开头 定义数组 ['aaa','bbb'] 变量以$开头 把 ...

  10. JSP中的MVC

    如下图