太多的PhantomJS流程

时间:2016-04-18 00:21:03

标签: selenium phantomjs

我在芹菜队列中使用Selenium PhantomJS webdriver,并且有两个并发工作者。

虽然我只有两个并发工作者,但我经常在活动监视器中获得大约50个PhantomJS进程,内存占用量很大。即使我调用driver.quit()方法,这些过程也似乎无法正常关闭。

我的代码如下:

class Scrape:
    def __init__(self):
        self.driver = webdriver.PhantomJS()
        self.driver.implicitly_wait(10)
        self.driver.set_window_size(1280, 800)

    def __enter__(self):
        return self

    def __exit__(self, exc_type, exc_value, traceback):
        self.driver.quit()

我在with语句中使用它以确保正确清理。但它似乎没有效果。关于如何改进这个的任何想法?

1 个答案:

答案 0 :(得分:3)

根据this issue,即最后2条评论,

  

如果使用npm

安装phantomjs,则会发生此问题

因此他们建议使用其他东西安装它(apt-get / homebrew)。