xpath

'''
extract()拿到的是字符串
xpath拿到的是selector对象,可以继续往下面找标签
//是孙子,子子孙孙,都可以找到
/是孩子
@是找属性
.是在当前的标签下面往下找
extra_first()只取第一个值
./儿子(当前标签下面)
.//当前标签下面的孙子,子子孙孙都可以
extarct_first()拿到当前标签下面的第一个文本内容
extract()拿到所有的标签文本的内容
*代表任意的标签
取当前标签下面的属性和文本:
/text()取当前标签的文本内容
/@href拿到当前的属性
response.xpath('//a[2]')
##后面的2是按索引来找到第二个
response.xpath('//a[@href][@id]')是多个条件进行筛选
//a[contains(@href,"link")]包含的关系,只有这个标签里面delink有这个字段就可以了,后面也可以是其他字符,比如sina
//a[start-with(@href,'link')]找到这个属性是否是以link开头的
re:正则
//a[re:test(@id,'i(d+)')]更高级的用法,前面是固定的写法,后面是找到id属性,后main是匹配的规则,id=i1或id=i2>>>>d+是匹配数字
//a[re:test(@id,'i(d+)')]/text()拿文本,或者其他
*是匹配多个的写法
'''

'''
//*[@id="newsContent23123186"]/div[1] 找第几个,最后是索引
#newsContent23123186 > div.part1 > a.n2
split('',)切割
strip()去除空

原文地址:https://www.cnblogs.com/yunxintryyoubest/p/9944527.html