- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VBA的WEB应用系列教程
——HTTP通讯基础篇
VBA的WEB应用教程,预计按以下几方面进行发布,敬请期待:
(1)HTTP通讯基础篇:主讲INTERNET通讯基础知识、网络数据包构成、HTTP协议简介、收发包工具使用技巧和初步在VBA中进行收发包。
(2)网页元素分析基础篇:主讲XHTML元素基础知识、HTML DOM基础知识、网页元素分析工具使用技巧和初步使用VBA进行网页操控。
(3)QUERYTABLE篇:主要介绍EXCEL自带导入网页数据对象QUERYTABLE的主要属性和方法,如何运用它导入网页数据。
(4)抓包控件篇:主讲XMLHTTP、WINHTTP、inet控件和WINSOCK控件基础知识、运用技巧和程序模板。
(5)页面控制和数据提取篇:主讲WEBBROWSER控件的基础知识和页面控制技巧,讲解如何从网页页面上提取所需的表单数据,赠送程序模板。
(6)文本处理和补遗篇:主讲文本处理技巧、文本内码转换、URL内码转换、补充ADO Stream对象在WEB方面的应用???XML数据交互、WEB服务和服务器推送机制等知识补遗。
(7)数据提取和数据防盗的博弈:主要介绍几种常见的网络数据防盗的情形,并探讨如何破解思路。
(8)JAVASCRIPT篇:高阶教程,主要简介JAVASCRIPT基础知识,以及MSScriptControl对象主要属性和方法,VBA如何解析json序列。
以下开始第一篇的正文:
一、网络通信基础知识串讲
网络通俗的说,是能上网的计算机的集合。计算机彼此不同,它们如何进行通讯呢,通过什么规则来通信呢。通过TCP/IP等标准协议,它允许我们的电脑,通过互联网直接和另一台电脑进行通讯。请注意,TCP/IP一般只是底层协议(传输层),可以简单理解为它只是提供计算机设备之间的底层通讯接口,其他例如软件方面的对接,还需要高层协议,后面我们会讲到。
有了通讯的规则,那计算机硬件方面是怎么互相识别呢。他们是通过数字地址,即我们通常说的IP,就像百度的IP就是6,我们可以在浏览器地址栏键入6也可以对百度进行访问。这一串数字实在不好记啊,所以就有了域名, 。用域名通讯的时候,域名要先经过互联网上的域名服务器(DNS)进行转换,转成IP地址,再进行访问。
网络上的两台计算机通讯,很多情况,一台是我们这些客户机,另外一台是提供信息的服务器。客户机需要浏览网页资讯的时候,是通过我们机子上安装的浏览器,例如IE、FIREFOX等,向服务器发送请求,服务器响应浏览器的请求,将相关的信息回传给我们的浏览器,浏览器进行识别和翻译,展现出来大量的文本或图片等,来供我们查看。
请注意,一般而言,通讯是静态的。服务器在等待浏览器的请求之前,是不会主动做任何事情的。现在页面很多动态实时的效果,其实还是我们浏览器,不停的向服务器发送请求,服务器返回消息再更新页面的结果,例如AJAX技术;或者是首次请求后,通讯并没有断开,服务器源源不断的往浏览器发送更新数据,这就是传说中的长连接技术。
服务器能识别我们的请求,我们的浏览器,也能翻译或解释那些服务器返回的数据或文档,那彼此之间的通讯格式,还需要一个协议去规范的。这就是我们常说的超文本传输协议——HTTP。HTTP协议就是用于客户端和服务器之间的文档或数据的交互的。请注意,这里的文档指的不仅是文本,还可能是图片、视频或音频,或者是指向到其他文档的嵌入式链接,因此叫超文本。
一般情况,当我们的浏览器,通过域名,访问了某个服务器,一般会进到服务器的门户主页面中。当我们点击门户页面的某个超链接或者点击某个提交按钮后,要求服务器进一步返回我们需要的某个资源文档,或者执行我们提交给它的某些命令时(例如成绩查询)。其实,我们刚才点击的超链接或按钮,就蕴含着我们要获取的文档或者执行程序的路径,这个路径统称URL——统一资源定位符。
HTTP通讯中,这个路径的格式一般为:HTTP://域名:端口/文档或程序的全路径?参数。端口就是服务器某个特定进程来处理客户端发来的消息,默认为80,可以先不用去理解这个名词。文档或程序路径是相对路径。服务器也是一台计算机,上面除了存放资源文件,还存放着维护服务器的软件,因此资源文档可能并不存放在其根目录上。例如,可能我们的资源文档根目录是服务器上/admin/web这个目录,那http://域名/news/weather.html其实访问的就是服务器根目录下/admin/web/news/weather.html这个文件。最后的?参数,是可选的,用于传递浏览器向服务器发送的请求参数,可有多个参数,用“”符号隔开,每个参数的名和值用“=”符号隔开,例如:/s?ie=utf-8wd=苹果,就是浏览器向百度服务器发送查询参数,查询关键字是苹果的数据,并请求按utf-8的内码
文档评论(0)