首页  >  问答  >  正文

python - xpath中如何使用变量

在xpath中该如何使用变量,想选择id是某个的元素,这个值是个变量

response.xpath('//p[@id=val]').extract_first()

其中val的值是'images',xpath中使用变量的语法是什么 。

仅有的幸福仅有的幸福2669 天前1628

全部回复(4)我来回复

  • PHP中文网

    PHP中文网2017-06-28 09:28:23

    参考文章:XPATH简明指南

    XPath中变量用$somevariable语法即$符号加变量名,然后在xpath方法调用时传参变量值。

    >>> # `$val` used in the expression, a `val` argument needs to be passed
    >>> response.xpath('//p[@id=$val]/a/text()', val='images').extract_first()
    u'Name: My image 1 '

    回复
    0
  • typecho

    typecho2017-06-28 09:28:23

    response.xpath('//p[@id={}]'.format(val)).extract_first()

    我理解xpath的参数也是个字符串嘛,你试试。

    回复
    0
  • 迷茫

    迷茫2017-06-28 09:28:23

    Scrapy文档

    回复
    0
  • 代言

    代言2017-06-28 09:28:23

    你这个是python语句,为什么不用字符串拼接把这个表达式拼接起来呢?
    比如

    response.xpath('//p[@id=' + val + ']').extract_first()

    回复
    0
  • 取消回复