Я просто хотел узнать, есть ли способ, чтобы добавить num в tr [1], например это -> tr [1 + num] ... I попробовал tr [1 + 9], и он работал, но когда я изменил его на num, конечно, это дало мне ошибку. Благодаря!Scrapy: добавление переменной в массив xpath
items = []
num = 1
hxs = HtmlXPathSelector(response)
dir = hxs.select('/html/body/div/table')
for i, tr in enumerate(hxs.select('/html/body/div/table//tr[count(./td)=2]')):
if (i % 7 == 0):
if (i > 0): items.append(item)
item = CraigslistSampleItem()
idx = i % 7
if(idx == 0):
item[rn[idx]] = tr.select('./td[2]//text()').extract()[0]
item ["title"] = dir.select('//tr[num]/td[2]/b/text()').extract()
num = num + 9
какую ошибку вы получили? –
дать xpath как 'select ('// tr [% s]/td [2]/b/text()'% str (num))' – Vipul
индекс списка вне диапазона. единственная проблема для меня - tr [num], поскольку tr [1 + 9] работает ... – chano