# Define your item pipelines here # # Don't forget to add your pipeline to the ITEM_PIPELINES setting # See: https://docs.scrapy.org/en/latest/topics/item-pipeline.html import re # useful for handling different item types with a single interface from itemadapter import ItemAdapter from scrapy.pipelines.files import FilesPipeline class HedgedocExporterPipeline: def process_item(self, item, spider): return item class PageFilesPipeline(FilesPipeline): def file_path(self, request, response=None, info=None, *, item=None): name = re.search(r'/(.*?)/download$', request.url).groups()[0] return f'{name}.md'