it-swarm.com.de

Webtreiber und Proxy-Server für Firefox

gibt es Möglichkeiten, die Proxy-Einstellungen von Firefox einzustellen? Ich habe hier Informationen über FoxyProxy gefunden, aber wenn Selenium funktioniert, sind Plugins in window nicht aktiviert.

35
Max Frai

Siehe die Dokumentationsseite .

Bestehendes Firefox-Profil anpassen

Sie müssen die Profileinstellungen "network.proxy.http" und "network.proxy.http_port" ändern.

FirefoxProfile profile = new FirefoxProfile();
profile.addAdditionalPreference("network.proxy.http", "localhost");
profile.addAdditionalPreference("network.proxy.http_port", "3128");
WebDriver driver = new FirefoxDriver(profile);
18
SSH

Der Wert für network.proxy.http_port sollte eine Ganzzahl sein (es sollten keine Anführungszeichen verwendet werden) und network.proxy.type sollte auf 1 gesetzt werden (ProxyType.MANUAL, Manuelle Proxyeinstellungen)

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("network.proxy.type", 1);
profile.setPreference("network.proxy.http", "localhost");
profile.setPreference("network.proxy.http_port", 3128);
WebDriver driver = new FirefoxDriver(profile);
46
Benjan Tom

Ich hatte gerade ein paar Tage Spaß an dieser Ausgabe und es fiel mir schwer, eine Antwort für HTTPS zu finden. Hier ist mein Take für Java:

    FirefoxProfile profile = new FirefoxProfile();
    profile.setPreference("network.proxy.type", 1);
    profile.setPreference("network.proxy.http", "proxy.domain.example.com");
    profile.setPreference("network.proxy.http_port", 8080);
    profile.setPreference("network.proxy.ssl", "proxy.domain.example.com");
    profile.setPreference("network.proxy.ssl_port", 8080);
    driver = new FirefoxDriver(profile);

Gotchas hier: Geben Sie nur die Domäne und nicht http://proxy.domain.example.com ein, der Name der Eigenschaft ist .ssl und nicht .https

Ich habe jetzt noch mehr Spaß beim Versuch, meine selbstsignierten Zertifikate anzunehmen ...

19
Victor

Nur um die oben angegebenen Lösungen hinzuzufügen., 

Hinzufügen der Liste der Möglichkeiten (Ganzzahlwerte) für den "network.proxy.type".

0 - Direct connection (or) no proxy. 

1 - Manual proxy configuration

2 - Proxy auto-configuration (PAC).

4 - Auto-detect proxy settings.

5 - Use system proxy settings. 

Basierend auf unserer Anforderung sollte der Wert "network.proxy.type" wie folgt festgelegt werden.

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("network.proxy.type", 1);
WebDriver driver = new FirefoxDriver(profile);
9
Praveen

Die WebDriver-API wurde geändert. Das aktuelle Snippet zum Einstellen des Proxy lautet

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("network.proxy.http", "localhost");
profile.setPreference("network.proxy.http_port", "3128");
WebDriver driver = new FirefoxDriver(profile);
8
Stefan Birkner

Falls Sie eine Autokonfigurations-URL haben -

        FirefoxProfile firefoxProfile = new FirefoxProfile();
        firefoxProfile.setPreference("network.proxy.type", 2);
        firefoxProfile.setPreference("network.proxy.autoconfig_url", "http://www.etc.com/wpad.dat");
        firefoxProfile.setPreference("network.proxy.no_proxies_on", "localhost");
        WebDriver driver = new FirefoxDriver(firefoxProfile);
5
Saikat

Hier ist ein Java-Beispiel, das DesiredCapabilities verwendet. Ich habe es benutzt, um Selentests in Jmeter zu pumpen. (war nur an HTTP-Anfragen interessiert)

import org.openqa.Selenium.Proxy;
import org.openqa.Selenium.WebDriver;
import org.openqa.Selenium.firefox.FirefoxDriver;
import org.openqa.Selenium.remote.CapabilityType;
import org.openqa.Selenium.remote.DesiredCapabilities;

String myProxy = "localhost:7777";  //example: proxy Host=localhost port=7777
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.PROXY,
                           new Proxy().setHttpProxy(myProxy));
WebDriver webDriver = new FirefoxDriver(capabilities); 
5
Dan Seibert

Für PAC-basierte URLs

 Proxy proxy = new Proxy();
 proxy.setProxyType(Proxy.ProxyType.PAC);
 proxy.setProxyAutoconfigUrl("http://some-server/staging.pac");
 DesiredCapabilities capabilities = new DesiredCapabilities();
 capabilities.setCapability(CapabilityType.PROXY, proxy);
 return new FirefoxDriver(capabilities);

Ich hoffe das kann helfen.

4
Antony

Firefox-Proxy: Java

String PROXY = "localhost:8080";

org.openqa.Selenium.Proxy proxy = new org.openqa.Selenium.Proxy();

proxy.setHttpProxy(PROXY)setFtpProxy(PROXY).setSslProxy(PROXY);

DesiredCapabilities cap = new DesiredCapabilities();

cap.setCapability(CapabilityType.PROXY, proxy); 

WebDriver driver = new FirefoxDriver(cap);
1
Nick

Es gibt eine andere Lösung, nach der ich gesucht habe, weil a Probleme mit Code wie folgt hatte (er hat den System-Proxy in Firefox festgelegt):

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("network.proxy.http", "localhost");
profile.setPreference("network.proxy.http_port", "8080");
driver = new FirefoxDriver(profile);

Ich bevorzuge diese Lösung, es erzwingt die manuelle Einstellung des Proxy in firefox . Verwenden Sie dazu das org.openqa.Selenium.Proxy-Objekt, um Firefox einzurichten

FirefoxProfile profile = new FirefoxProfile();
localhostProxy.setProxyType(Proxy.ProxyType.MANUAL);
localhostProxy.setHttpProxy("localhost:8080");
profile.setProxyPreferences(localhostProxy);
driver = new FirefoxDriver(profile);

wenn es helfen könnte ...

FirefoxProfile profile = new FirefoxProfile();
String PROXY = "xx.xx.xx.xx:xx";
OpenQA.Selenium.Proxy proxy = new OpenQA.Selenium.Proxy();
proxy.HttpProxy=PROXY;
proxy.FtpProxy=PROXY;
proxy.SslProxy=PROXY;
profile.SetProxyPreferences(proxy);
FirefoxDriver driver = new FirefoxDriver(profile);

Es ist für C #

0
zhouyu