Xpath各种语法
目标网址: https://www.f96.net/
# 1.根据节点定位
# 调用xpath 表达式解析 //:全局匹配 title /text(): 里面的文本 定位网页标题
from selenium import webdriver # 导包
# 实例化浏览器 如果为空就是是用的项目根目录的Chrome驱动
borwser = webdriver.Chrome()
# 请求网址
borwser.get('https://www.f96.net/')
# 隐式等待 每隔半秒请求
borwser.implicitly_wait(10)
ele = borwser.find_elements_by_xpath('//title')
for i in ele:
print(i.get_attribute('outerHTML'))
# 2. 根据属性定位标签节点 定位作者
//div/p[@class="line20" and @id="newarticle_0_intro"]
# 3.获取节点的属性 后面/@属性 就会显示=号后面的属性 , /text():获取标签里的文本
//div/p[@class="line20" and @id="newarticle_0_intro"]/@class
# 4. 区分 ./ and .// 一个/ 是子节点 //是子孙子节点
//head/meta[@content]//@content
# 5.多属性定位
//div/p/a[@title="龙王传说" and @id="newarticle_0_name"]/@href
# 6.单属性多值匹配 contains: 作用是一个属性有可能有多个值 只要满足其中一个值就匹配
//div[contains(@class,"c1")]/text()
# 7.索引定位标签
//div[@class="nav_cont"]/ul/li[1]/a/text()
# 8.last()函数 last: 末尾标签
//div[@class="nav_cont"]/ul/li[last()]
# 9.position()函数 位置小于4 也就是前三个标签
//div[@class="asd"]/ul/li[position()]<4