requests包:是一个实用的python的http客户端库,编写爬虫从web上爬取数据时经常用到 ,简单实用,接口简单 ,requests.get(URL)。
lxml包:主要用来解析通过requests抓取的html内容,从中提取出我们需要的数据,在对html文本内容进行提取、筛选时用到的是xpath语法 ,lxml使用的是xpath语法对html内容进行的定位筛选提取。
lxml包的使用:
通过lxml工具可以从html代码中提取我们需要的数据
一个网页就是一个html的文件
需要通过lxml对一个html格式的文件内容进行组织(组织成一个树形结构)
html文件是一个树形结构 - 类型linux系统的目录结构
通过lxml组织成树形结构后,然后再使用xpath语法对内容进行定位、筛选、过滤
xpath的语法使用:
路径表示(使用xpath语法来表示xml文本中标签的路径)
//div 定位到根节点下的所有的div标签,并返回一个可迭代对象
//div[class="j-r-list-c-desc"]/hl/text() 提取某个标签下的文本数据
/@href 提取的是某个标签下的属性名称为href的属性值
筛选条件
//div[@class="link"] 定位到根目录下的包含class属性并且属性值为link的div标签
//div[li] 筛选出根目录下所有的包含li子标签的div标签
//div[@class] 筛选出包含class属性的div标签