def process_item(self, item, spider):
result = {}
if item.get('firstname') and item.get('lastname'):
result['firstname'], result['lastname'] = item['firstname'], item['lastname']
# .....
return result
lcd1232:
Пересохранение в том же дикте выглядит подозрительно, как-будто у тебя там помойка
Придумай схему в которой твои входящий итем не будет изменяться, а ты будешь из него извлекать все в свою структуру дикт или named tuple и уже с гарантированно нормальными даннми работать внутри