我用python(3.6)和selenium、firefox web驱动程序创建了一个web scraper。我已经设置了一个cronjob,每隔几分钟运行一次这个scraper,它似乎都在工作,只是随着时间的推移(比如几天),我的ubuntuvps(8gbram,ubuntu18.04.4)上的内存填满了,然后崩溃了
当我查看HTOP时,我可以看到很多(如数百个)firefox进程,如“/usr/lib/firefox-marionete”和“/usr/lib/firefox-contentproc”,它们都占用了大约3或4mb的内存
我放了一个
browser.stop_client()
browser.close()
browser.quit()
在每个使用web驱动程序的函数中,我怀疑脚本有时会在遇到错误时打开web驱动程序,而没有正确关闭它们,并且这些firefox进程只是不断累积,直到我的系统崩溃
我正在努力寻找这一问题的根本原因,但与此同时,有没有一种快速的方法可以杀死/清理所有这些进程
例如,终止所有匹配进程(超过10分钟)的cronjob
谢谢
这很可能就是问题所在。我们通过使用try except finally块解决了这个问题
如果你仍然面临同样的问题,你可以根据这个answer或者Ubuntu的这个answer强制杀死驱动程序
相关问题 更多 >
编程相关推荐