一、xpath 基本语法
/html
/html/head/title 绝对路径(一层层的查找)
/html//title 相对于当前节点
//title/./../.. . 当前节点 ..父节点
../following-sibling::dd[1]/a 上一级的兄弟节点
//head/meta/@http-equiv 提取标签属性值
//title/text() 提取开闭标签之间的文本内容
/ 隔开的的是节点(除了尾部出现的之外)
二、节点修饰语法(使用[]修饰节点,[]跟在节点之后)
1.通过索引进行节点修饰(索引从0开始)
//body/div[3]/div/div[1]/div[position()>10]
//body/div[3]/div/div[1]/div[last()]
2.通过标签属性与属性值修饰节点
//div[@id="aa_tag_121536487"]
//div[@id]
3.通过子节点的值修饰当前节点
4.通过部分包含修饰节点
//div[contains(@id,"aa_tag_")]
5.通过内容寻找链接(一般用于下一页)
//div[text()="下一页"]/@href
6.节点的通配使用
//*[contains(text(),"下一")]
7.xpath语法的并用
三、url拼接
In [1]: import urllib
In [2]: a='http://baidu.com?kw=100'
In [3]: b='?abc=123'
In [4]: urllib.parse.urljoin(a,b)
Out[4]: 'http://baidu.com?abc=123'
四、scrapy中url拼接
response.urljoin(node.xpath('uri'))