如何在scrapy-splash中设置启动超时?

时间:2017-06-19 10:08:10

标签: python scrapy scrapy-splash

我使用scrapy-splash抓取网页,并在docker上运行启动服务。

commond:

docker run -p 8050:8050 scrapinghub/splash --max-timeout 3600

但我收到504错误。

"error": {"info": {"timeout": 30}, "description": "Timeout exceeded rendering page", "error": 504, "type": "GlobalTimeoutError"}

虽然我尝试添加splash.resource_timeoutrequest:set_timeoutSPLASH_URL = 'http://localhost:8050?timeout=1800.0',但没有任何变化。

感谢您的帮助。

1 个答案:

答案 0 :(得分:9)

我使用scrapy-splash包并在args SplashRequest参数中设置超时,如下所示:

yield scrapy_splash.SplashRequest(
    url, self.parse, endpoint='execute',
    args={'lua_source': script, 'timeout': 3600})

它对我有用。