Можете ли вы описать, какой вывод вы хотите получить?
Насколько я понял вашу проблему, вы можете применить zip
к вашим диктовкам, это объединит ваши значения и сделает возможной итерацию в болееясный путь.И лучше выдать предмет в конце цикла.
def parse_about(self, response):
# do your stuff on a page
items = response.meta['items']
names = {'name1':'Headings','name2': 'Paragraphs'}
finder = {'find1':'h2::text , #mainContent h1::text', 'find2': 'p::text'}
for name, find in zip(names.values(), finder.values()):
items[name] = response.css(find).extract()
yield items
Или просто почему бы не написать правильный дикт с самого начала?
def parse_about(self, response):
# do your stuff on a page
items = response.meta['items']
dct = {
'Headings': 'h2::text , #mainContent h1::text',
'Paragraphs': 'p::text',
}
for name, find in dct.iteritems():
items[name] = response.css(find).extract()
yield items