Web空间数据大多数都是采用文本格式进行描述,主要是HTML、XML、JSON 三种类型的文本格式,在服务器和浏览器之间通过超文本传输协 议(HTTP)或者完全超文本传输协议(HTTPS)进行传输信息。
HTML(Hyper Text Markup Language)超文本标记语言,是一种用来描述 网页的语言。目前对于HTML的解析主要采用正 则表达式和XPath相结合的方式,实现从半结构化的HTML文档中提取结构化的数 据。XPath是一门在XML或HTML文档中查找信息的语言,可用来在HTML文档 中对元素和属性进行定位。正则表达式是一种字符串匹配的模式,可提取和替换某个字符串中指定的内容。
XML(eXtensible Markup Language)指可扩展标记语言,是一种标记语言,类 似于HTML,但XML标签没有预定义,需要用户自行定义标签,具有自我描述性。XML是独立于软件和硬件的信息传输工具。目前XML文档的解析方法主要有基于 DOM(Document Object Model),基于SAX(Simple API for XML)两种。
基于SAX的XML解析是以序列的方式解析XML文档,即从前往后依次读取XML 文档内容。基于DOM解析XML文档则是首先获取整个XML文档的文档结构信 息树,然后通过分析文档结构信息树结合XPath解析文档。基于DOM的解析方法的 优点是可以结合XPath准确灵活地从XML文档中抽取所需的数据,缺点是当 XML文档较大或结构复杂时,基于DOM的解析方法对计算机的内存要求较高。基于SAX的解析方法的优点是能够实现对XML文档快速访问和读取,缺点是只能对文档按顺序解析一遍,不支持随意读取。
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式主要基于两 种结构:一种是名称/值的集合,不同的编程语言中,它被理解为对象、纪录、结构、字典、关联数组。另一种是值的有序列表,在大部分 编程语言中,它被理解为数组,列表。目前对于JSON数据的解析较为流行的方法 是:首先分析JSON数据的结构,然后使用与XPath近似的JSONPath来提取感兴趣的 信息。
评论列表 ( 0 )