Il semble que vous écrasiez vos listes au lieu de les ajouter lorsque vous le faites :
for site in sites:
items = [site.select('//h2').extract()]
item = [site.select('//h3').extract()]
meta = [site.select('//meta').extract()]
Je pense que vous voudrez peut-être le remplacer par :
for site in sites:
items.append(site.select('//h2').extract())
item.append(site.select('//h3').extract())
meta.append(site.select('//meta').extract())