【问题标题】:Splash memory limit (scrapy)启动内存限制(scrapy)
【发布时间】:2017-11-02 19:20:42
【问题描述】:

我已经从 docker 开始了启动。 我为 splash 和 scrapy 创建了大的 lua 脚本,然后它运行我看到了问题:

Lua 错误:__gc 元方法中的错误(/app/splash/lua_modules/sandbox.lua:189:脚本占用了太多内存

我怎样才能增加内存飞溅?

【问题讨论】:

  • 50MB 限制是用于纯 Lua 对象的最大内存(不包括网页消耗的 RAM,或屏幕截图图像数据);我正在考虑在未来的版本中提高这个限制,并想知道什么时候还不够。你的用例是什么,你知道是什么消耗了这段内存吗?

标签: scrapy splash-screen


【解决方案1】:

不幸的是,从 Splash 2.3.2 开始,没有内置方法可以提高这些限制。限制在这里是硬编码的:https://github.com/scrapinghub/splash/blob/7b6612847984fc574ebbedf9c3c750180cd93813/splash/lua_modules/sandbox.lua#L176 - 您可以更改值,然后通过在 Splash 源检查中运行 docker build -t splash . 来重建 Docker 映像,然后使用此映像而不是来自 DockerHub 的映像。

【讨论】:

    【解决方案2】:

    我通过优化 lua 脚本解决了我的问题。原来splash:select("a#story-title").node.innerHTMLsplash:evaljs('document.getElementById("story-title").innerHTML;')重很多

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-12-25
      • 2021-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-27
      • 1970-01-01
      相关资源
      最近更新 更多