xpath获取标签的class属性包含的多个值

如图:

class="items"的标签div下包含有多个div标签,它们的class值都等于"item J_MouserOnverReq item-ad " 或 "item J_MouserOnverReq item-ad ",使用

items_list  = driver.find_elements_by_xpath('//div[@class="items"]/div[@class="item J_MouserOnverReq  "]') 
# 或者 
items_list = driver.find_elements_by_xpath('//div[@class="items"]/div[@class="item J_MouserOnverReq item-ad  "]')  

都不能获取得class="items"的标签div下所有的div标签,那么如何获取呢?这时候可以使用功能函数 contains() 来获取包含多个class属性值的标签,如下:

items_list = driver.find_elements_by_xpath('//div[@class="items"]/div[contains(@class, "item J_MouserOnverReq item-ad  ") or contains(@class, "item J_MouserOnverReq  ")]')
print(len(items_list))
for item in items_list:
	# .//div 表示在当前节点下所有的div
    title = item.find_element_by_xpath('.//div[@class="row row-2 title"]/a').text
    price = item.find_element_by_xpath('.//div[@class="price g_price g_price-highlight"]/strong').text
    deal_cnt = item.find_element_by_xpath('.//div[@class="deal-cnt"]').text
    shop_name = item.find_element_by_xpath('.//div[@class="shop"]').text
    location = item.find_element_by_xpath('.//div[@class="location"]').text

    print(title, price, deal_cnt, shop_name, location)

xpath获取标签的class属性包含的多个值_第1张图片
xpath获取标签的class属性包含的多个值_第2张图片
xpath获取标签的class属性包含的多个值_第3张图片
xpath获取标签的class属性包含的多个值_第4张图片
xpath获取标签的class属性包含的多个值_第5张图片

你可能感兴趣的:(python)