.
.
我们在使用selenium 的xpath方式定位某个元素时,如果这个元素前半部分的路径是确定的,后半部分的路径不确定,并且其中有个img节点是需要我们定位出来的,但是不知道它是第几级子孙节点,这时候就可以用下面的xpath路径写法,总结起来就是 ‘//确定的或固定节点/descendant::子孙节点’ 。
descendant 是子孙后裔的意思。
用这个办法的好处,就是不用管目标节点在几级子孙节点上,都可以定位。而且可以使用find_elements_by_xpath 查找多个匹配的路径,可以同时找出符合要求的子节点、孙节点、曾孙节点等。
#定位img元素节点(使用了descendant::xxx)
elem = driver.find_elements_by_xpath(
'//*[@id="product-box"]/div[2]/section/div[3]/descendant::img')
# 解析出图片 URL
piclist = []