欢迎光临!
若无相欠,怎会相见

爬虫学习之页面指定内容的定位方法

两种定位方法

我学习scrapy爬虫的方法是看视频,从视频里,我学习到爬虫爬取页面的指定内容的定位方法有两种,分别是xpath定位和CSS选择器。如有错误,请留言

xpath语法

当然,我从视频里学习到的只是讲师认为需要学习到的。下面我把知识点记录下来

表达式  说明
article 选取所有article元素的所有子节点
/article 选取根元素article
article/a 选取所有属于article的子元素的a元素
//div 选取所有div子元素(不论出现在文档任何地方)
article//div 选取所有属于article元素的后代的div元素,不管他出现在article之下的任何位置
//@class 选取所有名为class的属性
/div/* 选取属于div元素的所有子节点
//* 选取所有元素
//div[@*] 选取所有带属性的元素
/div/a | //div/p 选取所有div元素的a和p元素
//span | //ul 选取文档中的span和ul元素
article/div/p|//span 选取所有属于article元素的div元素的p元素及文档中所有的span元素
/article/div[1] 选取属于article子元素的第一个div元素
/article/div[last()] 选取属于article子元素的最后一个div元素
/article/div[last()-1] 选取属于article子元素的倒数第二个div元素
//div[@lang] 选取所有拥有lang属性的div元素
//div[@lang=’eng’] 选取所有lang属性为eng的div元素

以上是比较常用的xpath语法

CSS选择器

同上,也是用的比较多的语法。

表达式 说明
* 选择所有节点
#container 选择id为container的节点
.container 选取所有class包含container的节点
li a 选取所有li下的所有a节点
ul + p 选择ul后面的第一个p元素
div#container>ul 选取id为container的div的第一个ul子元素
ul ~ p 选取与ul相邻的所有p元素
a[title] 选取所有有title属性的a元素
a[href=”http://xxxx.com”] 选取所有href属性为xxxx.com值的a元素
a[href*=”xxxx”] 选取所有href属性包含xxxx的a元素
a[href^=”http”] 选取所有href属性值以http开头的a元素
a[href$=”.jpg”] 选取所有href属性值以.jpg结尾的a元素
input[type=radio]:checked 选择选中的radio的元素
div:not(#container) 选取所有id非container的div属性
li:nth-child(3) 选取第三个li元素
tr:nth-child(2n) 第偶数个tr
赞(0) 打赏
转载请注明:飘零博客 » 爬虫学习之页面指定内容的定位方法
分享到: 更多 (0)

评论 1

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    测试评论

    Darker 7年前 (2017-08-03) 来自天朝的朋友 谷歌浏览器 Windows 10 回复

欢迎光临