Python связывание файлов данных в яйце Python - PullRequest
0 голосов
/ 23 октября 2019

Привет, у меня есть проект scrapy, в котором один из пауков открывает большой текстовый файл для некоторой обработки

import scrapy


class ToScrapeCSSSpider(scrapy.Spider):
    name = "toscrape-css"
    with open('path/to/myfile.txt', 'r') as f:
      start_urls = [f.readlines()]

    def parse(self, response):
        for quote in response.css("div.quote"):
            yield {
                'text': quote.css("span.text::text").extract_first(),
                'author': quote.css("small.author::text").extract_first(),
                'tags': quote.css("div.tags > a.tag::text").extract()
            }

        next_page_url = response.css("li.next > a::attr(href)").extract_first()
        if next_page_url is not None:
            yield scrapy.Request(response.urljoin(next_page_url))

После создания яйца и его развертывания с использованием scrapyd-deploy яйца копируются в конфигурацию scrapdкаталог, когда задание запланировано, оно не запускается, так как файл отсутствует в каталоге конфигурации scrapyd. Копирование файла решает проблему.

Есть ли какой-нибудь элегантный способ связать этот файл данных внутри яйца, чтобы мы моглиВам больше не нужно копировать текстовый файл во время выполнения программы?

...