2017-06-29 87 views
0

Chrome webdriver(バージョン3.4.3)でPythonセレニウムフレームワークを使用して、LinuxプラットフォームでChromium Webブラウザ58.0.3029.110(64ビット)を使用してWebページを複数回ロードしています= Linux 3.13.0-24-一般x86_64。自動Chromium Webdriverが最後にSeleniumで遅くなる

最初はうまく動作します。ただし、Webページを複数回ロードすると、Webブラウザが開くのが遅くなり、開かなくなります。私はシステムが遅くなると感じています。

ここには2つの質問があります。主なものは、クロームブラウザを最初から早く稼働させ続けるにはどうしたらいいですか?次に、driver.quose()でdriver.close()を置き換えると、Webブラウザの連続した開きに時間がかかりすぎるのはなぜですか?

これは私のpythonコード

from selenium import webdriver 
from selenium.common.exceptions import TimeoutException 
import time 
Time_Out=60 
site="http://www.google.com.au" 

def Loading_Webpage(website): 
    option = webdriver.ChromeOptions() 
    driver = webdriver.Chrome(chrome_options=option, executable_path="/usr/lib/chromium-browser/chromedriver") 
    driver.set_page_load_timeout(Time_Out) 
    try: 
     driver.get(website) 
    except TimeoutException: 
     return 1 
    driver.close() 
raw_input('Start Running') 
for i in range(500): 
    start=time.time() 
    Loading_Webpage(site) 
    print i, time.time()-start 
+0

FWIWあなたのメモリ消費量を見て、最も可能性の高い最終的に引き起こしてメモリにぶらぶら多くchromedriverプロセスが存在しますスワップするシステム。私はFirefox + Seleniumを数年前にこの遅い問題のために排他的に使用するように変更しました。 – Anthon

答えて

1

私はここに私の結果はウィンドウ10にテストのこの変化を走っています。 Webdriverの開始は最も変化が大きく、ページの読み込みには時間がかかりました。 driver.quit()時間は非常に一定でした。メモリリークはありませんでした(クロムインスタンスがまったくありません)。明らかに、これを実行するための最速の方法は、ドライバにあなたがページに移動するたびに終了しないことです。)

from selenium import webdriver 
from selenium.common.exceptions import TimeoutException 
import time 
Time_Out=60 
site="http://www.google.com.au" 

def Loading_Webpage(i, website): 
    start = time.time() 
    option = webdriver.ChromeOptions() 
    driver = webdriver.Chrome(chrome_options=option) 
    driver.set_page_load_timeout(Time_Out) 
    dstart = time.time() - start 
    try: 
     driver.get(website) 
     dload = time.time() - start - dstart 
    except TimeoutException: 
     return 1 
    driver.quit() 
    dquit = time.time() - start - dstart - dload 
    all = time.time() - start 
    print(i, dstart, dload, dquit, all) 

for i in range(500): 
    Loading_Webpage(i, site) 
+0

ありがとうございます。私にとっては、WebDriverのローディングが最も変化しました。ページの読み込みと終了は非常に一定でした。ありがとう – DebanjanB

+0

DebanjanBこんにちは、WindowsまたはLinuxでコードを実行しましたか? – Anees

+0

この問題はLinuxで直面しており、解決したいと考えています。 – Anees

関連する問題