Send Pythons Appium-kommandoer gennem en proxy
Konfigurer AppiumClientConfig for den forbindelse, der opretter fjernsessionen; enhedens proxyfunktioner gælder senere for en anden forbindelse.
For at nå Appium-serveren gennem en mellemmand skal du konfigurere Pythons HTTP-kommandokanal:
from appium import webdriver
from appium.webdriver.client_config import AppiumClientConfig
from selenium.webdriver.common.proxy import Proxy, ProxyType
route = Proxy()
route.proxy_type = ProxyType.MANUAL
route.http_proxy = 'http://proxy.example:8080'
route.ssl_proxy = 'http://proxy.example:8080'
config = AppiumClientConfig(
remote_server_addr='https://appium.example',
proxy=route,
)
driver = webdriver.Remote(
options=device_options,
client_config=config,
)device_options er programmets eksisterende indstillingsobjekt. Behold dets enheds-/browserfunktioner, og håndtér driver.quit gennem den eksisterende testlivscyklus.
AppiumClientConfig arver Seleniums ClientConfig. Manuel valg bruger http_proxy til en HTTP-serveradresse og ssl_proxy til en HTTPS-adresse. Her indeholder værdierne URL-skemaet, fordi de konfigurerer HTTP-forbindelsesadministratoren. For et Appium-endepunkt, der kan nås via en tilladt offentlig rute, skal du vælge en HTTP-kandidat fra HTTP-proxylisten til disse værdier.
En proxyfunktion, der sendes inde i sessionen, beder fjernmiljøet om at route sin egen trafik. Den kan ikke hjælpe Python med at indsende den tidligere anmodning om sessionsoprettelse. Konfigurer den anden vej separat, når det er nødvendigt.
Brug et kompatibelt Appium/Selenium-par, der eksponerer denne offentlige grænseflade. Patchning af et installeret remote_connection-modul rammer ældre klientopsætninger i stedet for denne konfigurationsvej.