Python是一种计算机程序设计语言。是一种动态的、面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。
目前python的开发越来越广泛,设计到web、后端、桌面应用程序、软件开发、科学统计等方面。其广泛性、灵活性、移植性、易读性、简单性等特点越来越收欢迎。在大数据时代,我们获取大量数据的途径之一就是使用python来爬取数据,然后使用MYSQL数据来存储数据,使用大数据分析工具进行数据处理。
下面来说一下今天的主题,爬虫。目前在python中各种获取网页源码的库有很多,第一种使用bs4中的BeautifSoup库来获取网页源代码;第二种使用lxml中的etree模块来获取网页源码等等,今天来说一下,比较简单的使用etree来爬取网站数据。
1、lxml和XPath
lxml是python的一个解析库,支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高。XPath 即XML路径语言,它是一门在XML文档中查找信息的语言,它最初是用来搜寻XML文档的,但是它同样适用于HTML文档的搜索。XPath的选择功能十分强大,它提供了非常简明的路径选择表达式,另外,它还提供了超过100个内建函数,用于字符串、数值、时间的匹配以及节点、序列的处理等,几乎所有我们想要定位的节点,都可以用XPath来选择。XPath使用路径表达式在xml文档中选取节点,这里注意需要逐级表现要选取节点的父子关系。下面主要说一下Xpath的用法:
1.1 XPath符号