11

私のpythonアプリケーションは、Selenium Webdriverを使用して、数時間の作業で合計20000ページ程度のWebページをロードします。私の問題は、「何か」が大量の tmp ファイルを作成し、ハード ドライブがいっぱいになることです。たとえば、今朝、アプリケーションは 6 時間の作業で 70GB の tmp ファイルを生成します :( Ubuntu を再起動した後、これらのファイルはすべてなくなりました。原因は Firefox にあると思います。

この状況は、Linux と OS X の両方で発生します。

def launchSelenium (url):
    profile = webdriver.FirefoxProfile()
    profile.set_preference("network.proxy.type", 1)
    profile.set_preference("network.proxy.http", "127.0.0.1")
    profile.set_preference("network.proxy.http_port", 8080)
    profile.set_preference("webdriver.load.strategy", "fast")
    profile.set_preference("permissions.default.stylesheet", 2)
    profile.set_preference("permissions.default.images", 2)
    profile.set_preference("dom.ipc.plugins.enabled.libflashplayer.so", "false")
    profile.set_preference("browser.sessionstore.enabled", "false")
    profile.set_preference("browser.cache.disk.enable", "false")
    profile.update_preferences()

    driver = webdriver.Firefox(firefox_profile=profile)

    driver.get(url)
    try:
        element = driver.find_element_by_xpath("//button[@title='Statistics']").click()
    except NoSuchElementException:
        print "Not available"
        driver.close()
        return 0
    driver.close()
    return 1

この問題を解決しようとして、Firefox プロファイルに最後の 2 つの設定を追加しましたが、何も変わりませんでした。

私は何か間違ったことをしていますか?Selenium にバグがありますか? ありがとう

4

1 に答える 1

22

わかりました、問題の解決策は次のように置き換えることです:

driver.close()

と:

driver.quit()

さよなら

于 2013-09-03T05:26:19.203 に答える