python爬虫中如何用xpath选择多个属性

strivezr 发布于 2017/08/05 13:43
阅读 945
收藏 0

python爬虫我需要获取商品的产地,

tree.xpath(
    "//div[@class='p-parameter']/ul[@class='parameter2 p-parameter-list']/li[4]/text()")

这样写是没问题的,但是如果到了下一个产品,产地就可能不是在第四个位置了,可能在第三个位置了,所以按照这个xpath写法,获取的可能就不是产地了,这要如何解决呢?而且这个title会根据商品的不同一直变化的

目前我想到的可能的解决方案:

1.我查了半天,看下xpath能否支持通配符的匹配。

tree.xpath(
    "//div[@class='p-parameter']/ul[@class='parameter2 p-parameter-list']/li[@title='*省*]/text()")

以上操作不行,本意是为了让xpath查找所有的title里是否有包含‘省’的title,如果有,就提取text()文件

2.更笨的办法,把所有的省市都列举出来,用“|”符号,这样实在太麻烦了,而且我不知道到底有多少个省市

 

所以想问下有没有其他的解决方法?

加载中
返回顶部
顶部