1、VBA 的 WEB 应用系列教程HTML 文档篇上节课,我们说了 HTTP 通讯,HTTP 通讯一般情况返回的是啥呢?是页面的源代码。例如,我们访问百度,返回了, “”一大堆东西。就是,我们在页面点击右键, “查看页面源文件” ,如图:我们的浏览器,正是把这堆源代码,翻译成我们可视的生动地页面的。就像 VBA 一样,这堆代码是什么语言呢,就是通常所说的,超文本标记语言。为啥叫标记语言,因为它只能用于展示,展示我们所看到的网页页面。不是编程语言哦。为啥叫超文本呢,大家仔细看,这堆源代码有什么特征呢,就是有很多这样的文本,一般而言,我们把叫做标签,细心的同学可以发现,标签都是成对出现的,例如“百度
2、一下,你就知道 ”。第一个叫做开始标签,第二个多带了个/叫结束标签。标签之间就是网页的文本,例如这个例子,就是我们网页标题的文本“百度一下,你就知道” 。所以,标签的作用就是,给文本打上标记,告诉浏览器,怎么显示这个文本。例如本例,要求浏览器把“百度一下,你就知道”显示成网页的标题。HTML 文档=文本+标签,所以就超文本啦。总之,HTML 就是用来描述网页的语言,像上面所说的这样的标签,是有一整套的,呵呵。我们的教程,并不是为了教大家,怎么去做网页,设计网页,因此,大家仅仅需要,大致的了解一些 HTML 系列的文本标记语言的基础即可,知道常用的几个标签,有什么用即可。一、网页数据提取常见的
3、HTML 标签/元素上面说了,标签是用来描述网页的。浏览器读取 HTML 文档,识别标签,并按标签要求以网页进行显示文本。大部分标签都是成队出现的。起始标签和结束标签之间的所有文本,都叫做元素。也就是这个格式就是:元素的内容标签是可以拥有属性的,因此起始标签,有时候格式如下:属性提供了元素的一些附加信息啦,后面我们讲具体标签,大家就会见到属性怎么用。另外,注意,元素是可以拥有元素的,即某个元素的内容有时候是一个子元素。元素这东西,比较抽象,我们可以把它且当作一个对象来理解,例如工作簿对象,每个工作簿的名称都不一样(属性) ,每个工作簿里面都有工作表(子元素) ,每个表都有名称(属性) ,里面填
4、写的内容也不一样(元素的内容) 。下面讲讲常见的和我们网页数据提取要常见的元素/标签。(一) 整体框架结构:每个网页文档,都是有个大致的框架,框架如下:网页标题网页文档主体把上面这段文本保存在 TXT 文件里面,然后另存.html 格式,就可以得到最基础的页面。从上面的框架代码,我们可以看出,一般的页面,都有 html 元素,其一般内含两个元素,一个是 head 元素,一个是 body 元素。Head 元素仅仅说明文档的相关消息,并不展示文档实体,body 元素才是真正展示文档主体的,所有要在页面展示的元素,都要在 body 內进行书写。后面的元素的测试,都是以替换掉 body 元素内的文本“
5、网页文档主体”进行书写,后续不再复述这个框架。(二)段落特别是提取小说,新闻等页面的消息,文本都是一段一段的,这样的页面,一般是通过标签实现的。这个没啥好说的,自己动手试看看就知道。所以,当运用 ie/webbrowser 方式提取这类网页的时候,历遍段落 p 元素即可。(三)超链接超链接是我们最常见的页面元素,基本的门户网站都有他,点了以后,可以跳转到另一个页面。一般语法格式:显示的超链接文本Target 属性,表示的是,当我们点击超链接,是在原页面进行跳转(_self)还是新建页面进行跳转(_blank) 。测试做个 ET 的超链接吧。(四)图像图像标签用法和超链接类似,语法:alt 属性
6、代表的是,当图片无法加载的时候,替换显示的文本。我们做个加载 ET 的 LOGO 的页面玩玩。(http:/ 。(五)表格表格是我们网页最常见的,也是我们网页数据提取,最需要打交道的,其实它非常简单,框架如下,每行用,每个单元格用:第一行第一个单元格第一行第二个单元格第二行第一个单元格第二行第二个单元格(六)列表很多时候,数据也经常以列表形式存在的,列表有三种:无序、有序和自定义。分别框架如下:1、无序列表函数VBA2、有序列表图书VBA函数视频基操图表数透3、自定义列表第一节课网络通讯第二节课HTML(七)表单和表单控件除了表格,表单也是我们在网页数据提取,页面操控最常见到的元素。例如我们注
7、册用户,例如我们的微博登陆,例如我们的百度搜索,其实都是表单。我们先来看一个例子:请在文本框输入要搜索的关键字,后按提交,将提交百度进行搜索例如在文本框输入“苹果”后,按提交按钮:这个表单模拟的是百度搜索,在文本框输入关键字后,按提交,将跳转至百度的搜索结果的界面。呵呵,奇妙吧。如何实现的呢?细心的同学会发现吧,表单 form 这个元素,有“method”和“action”两个属性,action 属性指定的就是,提交表单后,向这个属性指定 URL 发送 http请求(呵呵,涉及到第一节课的知识啦) ,method 这个属性设定的就是,要按照 get 或者 post 等方式发送 http 请求。
8、复习下第一节课吧,采用 get 的方式呢,参数将在 URL 后面加个?号,然后发送,采用 post 的方式呢,将在消息主体里面投递查询参数。那发送 http 请求的参数从哪里来的?就是从表单元素内含的各种下属元素,提取其 name 属性的值,作为参数名,然后提取该元素的 value 属性作为参数值(value 属性的值有时候是由我们输入的,例如本例,虽然我们指定了默认的value 属性的值为 exceltip,但是我们可以手动输入,把它修改成“苹果” ) 。然后浏览器就用参数名=参数值和&进行连接(还是上节课的知识)串起来。就如本例,提交后,观察 URL 为:http:/ 就是第一个 inpu
9、t 元素的属性值,苹果就是我们输入的,赋予第一个 input 元素的value 属性的值。下面,我们讲讲表单主要的内含子元素吧。1、输入标签()其语法是:其类型由 type 属性定义,常见的有:text(文本框) 、Radio(单选按钮) 、Checkboxes(复选框) 、submit(提交按钮) 、hidden(隐藏) 、reset(重置)和 password(密码框)等。其中注意,其中单选框和复选框的是否选中,由checked 属性指定,如果值是”checked”则选定。不多说了,看例子吧。 (文本框和提交按钮就不做了,上面都举例了。密码框同,类似的)表格设计文档处理幻灯片vip普通会员