Seleniumwire的主机名或IP地址

qyuhtwio  于 2022-12-13  发布在  其他
关注(0)|答案(1)|浏览(287)

我尝试在远程模式下运行seleniumwire驱动程序。问题是我不太明白官方文档中的一些说明:https://pypi.org/project/selenium-wire/#all-options

options = {
    'addr': 'hostname_or_ip'  # Address of the machine running Selenium Wire. Explicitly use 127.0.0.1 rather than localhost if remote session is running locally.
}
driver = webdriver.Remote(
    command_executor='http://www.example.com',
    seleniumwire_options=options
)

我在哪里可以找到IP的主机名?一开始我以为它可能是我用来连接selenium网格的地址,类似于'http://hub.selenium-grid:4444/wd/hub'。但是它引发了一个错误:

E   seleniumwire.thirdparty.mitmproxy.exceptions.ServerException: Error starting proxy server: gaierror(-2, 'Name or service not known')

那么,如果它不是正确的“地址”,我应该用什么来代替呢?

dwbf0jvd

dwbf0jvd1#

我找到了解决办法:https://github.com/wkeeling/selenium-wire/issues/327当我使用真实的的ip时它对我有效,而不是127.0.0.1我希望它对你有用
我的代码(端口9922是任意的,只要端口未被使用):

options.add_argument('--proxy-server=192.168.64.131:9922')
    seleniumwire_options = {
        'suppress_connection_errors': False,
        'auto_config': True,
        'addr': '192.168.64.131',
        'port': 9922
    }
    driver = webdriver.Remote(
        command_executor="http://192.168.64.131:4444/wd/hub",
        desired_capabilities=options.to_capabilities(),
        seleniumwire_options=seleniumwire_options
    )

相关问题