xpath (python)xpath中如何使用变量
描述:
在xpath中该如何使用变量,想选择id是某个值的元素,这个值是个变量。
response.xpath('//div[@id=val]').extract_first()
其中val的值是'images',xpath中使用变量的语法是什么 。
解决方案1:
你这个是python
语句,为什么不用字符串拼接把这个表达式拼接起来呢?
比如
response.xpath('//div[@id=' + val + ']').extract_first()
解决方案2:
Scrapy文档
解决方案3:
response.xpath('//div[@id={}]'.format(val)).extract_first()
我理解xpath
的参数也是个字符串嘛,你试试。
解决方案4:
参考文章:XPATH简明指南
XPath中变量用$somevariable
语法即$
符号加变量名,然后在xpath
方法调用时传参变量值。
>>> # `$val` used in the expression, a `val` argument needs to be passed
>>> response.xpath('//div[@id=$val]/a/text()', val='images').extract_first()
u'Name: My image 1 '