这是我的item.py
class SampleItem(Item):
title = Field()
link = Field()
link = Field()
code = Field()
并且据说我想在test.py中找到一些像
这样的临时变量 loc_Con = hxs.select('/tr/td[2]/span/span/span') #for country
loc_Reg = hxs.select('/tr/td[2]/span/span') #for region
loc_Loc = hxs.select('//tr[3]/td[2]/span/span') #for local
items = []
for titles in titles:
item = somethingItem()
temp[1] = loc_Con.select('text()').extract()
temp[2] = loc_Reg.select('text()').extract()
temp[3] = loc_Loc.select('text()').extract()
temp[1] = temp[1][0] if temp1 else ""
temp[2] = temp[2][0] if temp2 else ""
temp[3] = temp[3][0] if temp3 else ""
item["code"] = "{temp[1]}-{temp[2]}-{temp[3]}".format(temp[1],
temp[2],
temp[3])
我该怎么办才能在items.py
中添加temp [1] = Field答案 0 :(得分:0)
您可以在循环中定义任何临时变量,以计算item["code"]
所需的字符串值。然后,item["code"]
将通过.format()
保留一个新的字符串值,与临时变量无关。
loc_Con = hxs.select('/tr/td[2]/span/span/span') #for country
loc_Reg = hxs.select('/tr/td[2]/span/span') #for region
loc_Loc = hxs.select('//tr[3]/td[2]/span/span') #for local
items = []
for titles in titles:
item = somethingItem()
temp1 = loc_Con.select('text()').extract()
temp2 = loc_Reg.select('text()').extract()
temp3 = loc_Loc.select('text()').extract()
temp1 = temp1[0] if temp1 else ""
temp2 = temp2[0] if temp2 else ""
temp3 = temp3[0] if temp3 else ""
item["code"] = "{0}-{1}-{2}".format(temp1,
temp2,
temp3)
因此无需添加任何特殊的temp[1] = Field()
。