В настоящее время я пытаюсь запустить scrap в облачной функции Google.
from flask import escape
from scrapy.crawler import CrawlerProcess
from scrapy.utils.project import get_project_settings
def hello_http(request):
settings = get_project_settings()
process = CrawlerProcess(settings)
process.crawl(BlogSpider)
process.start()
return 'Hello {}!'.format(escape("Word"))
Это работает, но, как ни странно, не "все время". Каждый раз, HTTP-вызов возвращает ошибку, и я могу прочитать драйвер стека: Function execution took 509 ms, finished with status: 'crash'
Я проверяю паука, даже упростил его до чего-то, что не может дать сбой, например:
import scrapy
class BlogSpider(scrapy.Spider):
name = 'blogspider'
start_urls = ['https://blog.scrapinghub.com']
def parse(self, response):
yield { 'id': 1 }
Может кто-нибудь объяснить мне, что происходит?
Может ли это быть квота ресурса, которую я бью?