42

Firefoxのプロキシ設定を設定する方法はありますか?ここでFoxyProxyに関する情報を見つけましたが、Seleniumが機能すると、プラグインがウィンドウで非アクティブ化されます。

4

13 に答える 13

52

の値はnetwork.proxy.http_port整数である必要があり(引用符は使用しないでください)、network.proxy.type1として設定する必要があります(ProxyType.MANUAL、手動プロキシ設定)

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);
于 2011-03-02T10:42:39.643 に答える
23

私はこの問題を数日間楽しんだだけで、HTTPSの答えを見つけるのは困難だったので、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);

ここでの落とし穴:ドメインのみを入力し、ではなくhttp://proxy.domain.example.com、プロパティ名は.sslであり、.https

自己署名証明書を受け入れるようにしようとすると、さらに楽しくなります...

于 2012-08-09T11:56:18.680 に答える
21

ドキュメントページをご覧ください。

既存のFirefoxプロファイルを微調整する

「network.proxy.http」と「network.proxy.http_port」のプロファイル設定を変更する必要があります。

FirefoxProfile profile = new FirefoxProfile();
profile.addAdditionalPreference("network.proxy.http", "localhost");
profile.addAdditionalPreference("network.proxy.http_port", "3128");
WebDriver driver = new FirefoxDriver(profile);
于 2010-07-16T02:25:50.110 に答える
12

上記のソリューションに追加するだけです。、

「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. 

したがって、要件に基づいて、「network.proxy.type」の値を以下のように設定する必要があります。

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("network.proxy.type", 1);
WebDriver driver = new FirefoxDriver(profile);
于 2015-04-28T11:05:32.997 に答える
9

WebDriverAPIが変更されました。プロキシを設定するための現在のスニペットは

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("network.proxy.http", "localhost");
profile.setPreference("network.proxy.http_port", "3128");
WebDriver driver = new FirefoxDriver(profile);
于 2010-12-29T11:53:32.390 に答える
5

自動設定URLがある場合-

        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);
于 2013-04-03T11:39:29.610 に答える
5

これは、を使用したJavaの例DesiredCapabilitiesです。セレンテストをjmeterに送り込むために使用しました。(HTTPリクエストにのみ関心がありました)

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); 
于 2013-04-23T17:40:25.393 に答える
4

PACベースのURLの場合

 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);

これがお役に立てば幸いです。

于 2012-02-21T14:25:46.017 に答える
3

最新のドキュメントによると

from selenium import webdriver

PROXY = "<HOST:PORT>"
webdriver.DesiredCapabilities.FIREFOX['proxy'] = {
    "httpProxy": PROXY,
    "ftpProxy": PROXY,
    "sslProxy": PROXY,
    "proxyType": "MANUAL",

}

with webdriver.Firefox() as driver:
    # Open URL
    driver.get("https://selenium.dev")
于 2020-06-23T07:00:54.133 に答える
2

Firefoxプロキシ: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);
于 2015-04-14T22:01:40.843 に答える
0
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);

C#用です

于 2012-05-09T09:44:32.830 に答える
0

別の解決策があります。このようなコードに問題があったため、私は探しました(Firefoxでシステムプロキシを設定します):

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

私はこの解決策を好みます、それはFirefoxでプロキシ手動設定を強制します。これを行うには、org.openqa.selenium.Proxyオブジェクトを使用してFirefoxをセットアップします。

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

それが役立つなら...

于 2011-12-20T08:25:48.897 に答える
-4

[設定]->[詳細設定]->[ネットワーク]->[接続](Firefoxがインターネットに接続する方法を構成します)

于 2010-05-23T00:01:08.393 に答える