木偶操纵者使用临时文件消耗了太多磁盘 space

puppeteer consuming too much disk space with temporary files

我在使用 puppeter 时遇到问题,我需要优化它的性能,还知道如何让它支付临时文件的费用。

我使用的参数是

 args: [
                    `--window-size=800,600`,
                    '--no-sandbox',
                    '--disable-setuid-sandbox',
                    '--disable-dev-shm-usage',
                    '--disable-accelerated-2d-canvas',
                    '--no-first-run',
                    '--no-zygote',
                    '--disable-gpu'
                ]

有什么办法可以优化它,而不是让它在我的磁盘上用临时文件消耗大量space?

我每天用自己制作的刮板打开它超过 1000 次。

没有办法陷入困境

禁用缓存应该会减少大部分(如果不是全部的话)临时文件。添加以下参数,如下所示:

'--aggressive-cache-discard',
'--disable-cache',
'--disable-application-cache',
'--disable-offline-load-stale-cache',
'--disable-gpu-shader-disk-cache',
'--media-cache-size=0',
'--disk-cache-size=0',

此外,您可能希望禁用图像和 CSS(参见 here)以进一步提高速度并降低临时文件和网络吞吐量。

另外,additional flags 可能对您的用例有帮助:

'--disable-extensions',
'--disable-component-extensions-with-background-pages',
'--disable-default-apps',
'--mute-audio',
'--no-default-browser-check',
'--autoplay-policy=user-gesture-required',
'--disable-background-timer-throttling',
'--disable-backgrounding-occluded-windows',
'--disable-notifications',
'--disable-background-networking',
'--disable-breakpad',
'--disable-component-update',
'--disable-domain-reliability',
'--disable-sync',

如果您尝试了所有方法但仍然发现它会产生大量垃圾,您可能需要研究 Docker 调整您的抓取工具。如果您选择 Docker 路径,我推荐 docker-slim,因为它显着减小了 Docker 图像的大小而没有任何负面影响。