Щоб досягти сервера Appium через посередника, налаштуйте HTTP-канал команд Python:

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 — це наявний об'єкт параметрів застосунку. Збережіть його можливості пристрою/браузера та керуйте driver.quit через наявний життєвий цикл тесту.

AppiumClientConfig успадковує ClientConfig із Selenium. Ручний вибір використовує http_proxy для адреси HTTP-сервера та ssl_proxy для адреси HTTPS. Тут значення містять схему URL, оскільки вони налаштовують менеджер HTTP-з'єднань. Для кінцевої точки Appium, доступної через дозволений публічний маршрут, виберіть HTTP-кандидата зі списку HTTP-проксі для цих значень.

Можливість проксі, надіслана всередині сеансу, просить віддалене середовище маршрутизувати власний трафік. Вона не може допомогти Python надіслати попередній запит на створення сеансу. Налаштуйте цей інший шлях окремо, коли потрібно.

Використовуйте сумісну пару Appium/Selenium, яка надає цей публічний інтерфейс. Виправлення встановленого модуля remote_connection спрямоване на старіші клієнтські конфігурації, а не на цей шлях налаштування.

Схожі статті