
scrapy框架开发爬虫实战——css语法
css选择器
CSS即层叠样式表, 其选择器是一种用来确定HTML文档中某部分位置的语言。 CSS选择器的语法比XPath更简单一些, 但功能不如XPath强大。 实际上, 当我们调用Selector对象的CSS方法时, 在其内部会使 用Python库cssselect将CSS选择器表达式翻译成XPath表达式, 然后调用Selector对象的XPATH方法。
css基本语法表 css用法例子E: 选中E元素。
# 选中所有的img >>> response.css('img')E1,E2: 选中E1和E2元素。
# 选中所有base和title >>> response.css('base,title')E1 E2: 选中E1后代元素中的E2元素。
# div 后代中的img >>> response.css('div img')E1>E2: 选中E1子元素中的E2元素
# body 子元素中的div >>> response.css('body>div')[ATTR]: 选中包含ATTR属性的元素。
# 选中包含style属性的元素 >>> response.css('[style]')[ATTR=VALUE]: 选中包含ATTR属性且值为VALUE的元素。
# 选中属性id值为images-1的元素 >>> response.css('[id=images-1]')E:nth-child(n): 选中E元素, 且该元素必须是其父元素的第n个子元素。
# 选中每个div的第一个a >>> response.css('div>a:nth-child(1)') # 选中第二个div的第一个a >>> response.css('div:nth-child(2)>a:nth-child(1)')E:first-child: 选中E元素, 该元素必须是其父元素的第一个子元素。 E:last-child: 选中E元素, 该元素必须是其父元素的倒数第一个子元素。
# 选中第一个div的最后一个a >>> response.css('div:first-child>a:last-child')E::text: 选中E元素的文本节点。
# 选中所有a的文本 >>> sel = response.css('a::text')更多详细内容可以参看CSS选择器文档: www.w3/TR/css3-selectors/
👁️ 阅读量:0
© 版权声明:本文《scrapy框架开发爬虫实战——css语法》内容均为本站精心整理或网友自愿分享,如需转载请注明原文出处:https://www.zastudy.cn/wen/1686972112a411745.html。