Может быть, я что-то упускаю, но, насколько я понимаю, вам просто нужно использовать i
вместо site
(вы в конце концов просматриваете список сайтов).
domain = urlparse(site).netloc
и scraper = scrape_me(site)
как минимум.
РЕДАКТИРОВАТЬ:
В дополнение к вашему комментарию - вы фактически сохраняете последний результат 3 раза, так как вы делаете его в отдельном для l oop , Чтобы это исправить, можно реструктурировать код и поместить все в один для l oop:
Перед тем, как запустить l oop:
with open('test.csv', "w", encoding="utf-8") as recipes_file:
Inside l oop:
recipe_writer = csv.writer(recipes_file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
recipe_writer.writerow([title, total_time, ingredients, instructions, image])