2015-07-22 20 views
5

Selenium kullanırken Firefox'ta görüntüleri devre dışı bırakmak istiyorum. geneli, permissions.default.image değeri yerine, hala 1'dir: Bu i çalıştırdığınızda ben yaklaşık girdiğinizde Ancak, görüntüler ekran ve Disable images in Selenium PythonSelenium/Firefox'ta görüntüleri kapatamıyorum

ilgili talimatlar hakkında belgelenmiştir ateş, içinde tercihlerin basit bir güncelleme olmalı 2 bunu ayarlamaya çalıştım. (Python ile yazılmış)

Benim kodudur:

Başvuru için
from selenium import webdriver 
firefox_profile = webdriver.FirefoxProfile() 
firefox_profile.set_preference("permissions.default.image", 2) 
driver = webdriver.Firefox(firefox_profile) 
driver.get(web_address) 

, bu kod tercihi örneğin başka değişiklik ile mükemmel çalışır csv dosyalarını hat firefox_profile.set_preference("permissions.default.stylesheet",2) ile kapatma. Csv ayarı ve görüntü arasındaki tek fark, permissions.default.image hattının şu satırlarda mevcut olmasıdır: config (yani ayarlamadan), ancak permissions.default.stylesheet hattı yoktur. ... istediğim değerle yeni satırlar ekleyebiliyorum, ama mevcut olanı değiştiremiyorum (ya da değerimi girdikten sonra Selenium tarafından aşırı yüklenmiş bir arı).

+0

da d yaptın isable flaş? firefox_profile.set_preference ('dom.ipc.plugins.enabled.libflashplayer.so', 'false') –

+0

Hangi selenyum ve hangi Firefox sürümlerini kullanıyorsunuz? Teşekkürler. – alecxe

+0

@alecxe Firefox 39 ve Salenium 2.46.0. Ayrıca, varsayılan değerleri değiştiremiyorum gibi görünüyor - ben değer 2 ile "permissions.default.image_new" değeri oluşturabilir, ancak "permissions.default.image" 1 - 2 arasında değiştirmek için – kyrenia

cevap

4

Anladığım kadarıyla, bu sorun, aşağıdaki Firefox konularla ilgilidir:

permissions.default.image değiştirilemez, dondurulmuş ve hiçbir şey yapmaz anlamına gelir bu.


Alternatifler:

+0

Teşekkürler Alecxe!Image Block, firefox'un en son sürümünü desteklemediğinden, QuickJava'nın daha iyi çalışmasına rağmen uzantıları kullanma konusunda tavsiyelerinizi takip etti. Http://stackoverflow.com/questions/25214473/disable-images-in-selenium-python – kyrenia

0

Chrome -e doğru Image Block uzantısı. Çözüm 3 adımda körüklüdür. 1- Firefox için yeni profil oluşturuluyor. Windows'da tamamen Firefox'u kapatın. (Pencere + R) tuşuna basın, firefox.exe -p yazıp enter tuşuna basın ve yeni bir profil oluşturun. Daha sonra oluşturulan profilin açık yaklaşık ile 2-açık Firefox: gezinme çubuğunda yapılandırma ve permissions.default.image bulup numara 2. var olmak burada açıklanan bulundu feryat

ProfilesIni profile = new ProfilesIni(); 
FirefoxProfile myprofile = profile.getProfile("your_profile_name"); 
WebDriver driver = new FirefoxDriver(myprofile); 
0

tek çare gibi kodunuzu 3-değiştirme :

http://seleniumwebdrivertrainings.com/on-firefox-in-selenium-webdriver-tests-with-python-do-not-want-images-to-load-and-css-to-render/ Örneğin

:

from selenium import webdriver 
firefox_profile = webdriver.FirefoxProfile() 

firefox_profile.add_extension(folder_xpi_file_saved_in + 'quickjava-2.1.0-fx.xpi') 
firefox_profile.set_preference('thatoneguydotnet.QuickJava.curVersion', '2.1.0') ## Prevents loading the 'thank you for installing screen' 
firefox_profile.set_preference('thatoneguydotnet.QuickJava.startupStatus.Images', 2) ## Turns images off 
    firefox_profile.set_preference('thatoneguydotnet.QuickJava.startupStatus.AnimatedImage', 2) ## Turns animated images off 
driver = webdriver.Firefox(firefox_profile) 
driver.get(web_address_desired) 
+1

adresindeki sorunumu çözen kodumu paylaştım. stackoverflow.com/a/31576684/2801069 – kyrenia