我的第七篇python爬虫博客《xpath》

xpath

xpath基本概念:

xpath(xml language path)文档节点中通过元素节点和属性节点进行导航

xml 可拓展标记语言

html 超文本标记语言

lxml 是python当中的一个第三方库,可以将html文本转换成一个xml对象

文档节点的关系:我的第七篇python爬虫博客《xpath》_第1张图片

xpath的工具使用:

chrome插件xpath-helper

1.将下载的xpath-helper插件的后缀名改crx→rar,然后解压

2.点击chrome网页上的更多工具→拓展程序我的第七篇python爬虫博客《xpath》_第2张图片

3.点击解压的xpath-helper文件

4.ctrl+shift+x可以先打开工具

在这里插入图片描述

Firefox插件Checker :同上

xpath常用:

/ 从根节点选取(从开头开始选取)

// 从匹配选择的当前节点选择文档中的节点,而不考虑他们的位置(从中间开始选取)

. 选取当前节点

… 选取当前节点的父节点

@ 选取属性

查找某个特定的节点或者包含某个指定的值的节点

/windos/game[1] 选取属于windos子元素的第一个game元素

/windos/game[last()] 选取windos子元素的最后一个game元素

/windos/game[last()-1] 选取windos子元素的倒数第二个game元素

/windos/game[position<3] 选取属于windos子元素的前两个game元素

/windos/game[wmm<3] 选取所有windos元素中的game元素中wmm元素的值小于3

//game[@lang] 选取所有game元素中名为lang的属性

//game[@lang=‘wmm’] 选取所有game元素中拥有值为wmm的lang属性

lxml模块的应用:

lxml模块的安装:

换源安装:pip install lxml -i https://pypi.douban.com/simple

我的第七篇python爬虫博客《xpath》_第3张图片

lxml模块的使用:

1.form lxml import etree 导入模块
2.得到网页源码
3.etree.HTML(网页源码) 得到一个element对象
4.element对象可以使用xpath进行导航 element.xpath(’ ')

我的第七篇python爬虫博客《xpath》_第4张图片

什么是csv?:csv是一种常用的文本格式,用以存储表格数据

写入csv文件的方法:

1.通过writer对象主要有两法写入方法:

一:writerow 写入一行

我的第七篇python爬虫博客《xpath》_第5张图片

二:writerows 写入多行

我的第七篇python爬虫博客《xpath》_第6张图片
我的第七篇python爬虫博客《xpath》_第7张图片

2.使用Dictwriter 可以用字典的方式把数据写进去

我的第七篇python爬虫博客《xpath》_第8张图片

读取csv文件的方法

1.通过reader()读取到的每一条数据都是一个列表,可以通过下标的方式获取具体某一个值

我的第七篇python爬虫博客《xpath》_第9张图片

2.通过Dictreader()读取到的数据是一个字典,可以通过key值的方式获取数据

我的第七篇python爬虫博客《xpath》_第10张图片

你可能感兴趣的:(python,爬虫,xpath,csv)