如何在scrapy xpath数组

时间:2017-06-23 10:22:19

标签: python scrapy

xpath('//*[@id="tb"]/table/tbody/tr[3]/td[1]/text()')
xpath('//*[@id="tb"]/table/tbody/tr[3]/td[2]/text()')
xpath('//*[@id="tb"]/table/tbody/tr[3]/td[3]/text()')
xpath('//*[@id="tb"]/table/tbody/tr[4]/td[1]/text()')
xpath('//*[@id="tb"]/table/tbody/tr[4]/td[2]/text()')
xpath('//*[@id="tb"]/table/tbody/tr[4]/td[3]/text()')
xpath('//*[@id="tb"]/table/tbody/tr[3]/td[7]/text()')

我想用变量

替换tr [3]

离> tr [3] - > TR [A]

我试过了......

xpath('//*[@id="tb"]/table/tbody/tr[' a ']/td[7]/text()')   -not work
xpath('//*[@id="tb"]/table/tbody/tr[' " a " ']/td[7]/text()') -not work
xpath('//*[@id="tb"]/table/tbody/tr[" ' a ' "]/td[7]/text()') -not work
xpath('//*[@id="tb"]/table/tbody/tr['+ a +']/td[7]/text()') -not work
xpath('//*[@id="tb"]/table/tbody/tr[' "+ a +" ']/td[7]/text()')  -not work

1 个答案:

答案 0 :(得分:1)

只需使用string formatting str.format(..)

xpath('//*[@id="tb"]/table/tbody/tr[{}]/td[7]/text()'.format(a))
#                                   ^ placeholder     ^ format call

这将用{}的字符串表示替换a模式。