AWS ec2 服务器上的 运行 Selenium Grid 时如何避免 SSLCertVerificationError
How to avoid SSLCertVerificationError when run Selenium Grid on AWS ec2 server
我通过 docker 在 AWS ec2 上构建了一个 Selenium Grid 云服务器,
和 DNS 指向 CloudFlare。
我使用 Selenium Grid API 来验证服务器状态。
$ curl -X GET https://<my-host>/status
Service looks well
但是当我 运行 robotframework
时我无法连接到服务器
这是我的代码示例。
Open Docker Browser
[Arguments] ${browserURL} ${browserName}=${NONE}
${browserName} = Evaluate "${browserName}".capitalize()
${browserOptions} = Evaluate sys.modules['selenium.webdriver'].${browserName}Options() sys, selenium.webdriver
Call Method ${browserOptions} add_argument --headless
Call Method ${browserOptions} add_argument --ignore-certificate-errors
Call Method ${browserOptions} add_argument --start-maximized
Call Method ${browserOptions} add_argument --allow-insecure-localhost
${options} = Call Method ${browserOptions} to_capabilities
Set To Dictionary ${options} browserName ${DEFAULT_BROWSER}
Set To Dictionary ${options} platform ${DEFAULT_PLATFORM}
${executor} = Evaluate str("https://<my-host>")
${webdriver} = Create Webdriver Remote alias=${browserName} desired_capabilities=${options} command_executor=${executor}
Go to ${browserURL}
This is error log
这似乎有一些 SSL 错误。
试了很多方法还是不行
有人也有这个问题吗?
谢谢。
我找到了解决方案,我更新了我的脚本。
并将 AWS 设置从 HTTPS 更新为 HTTP
${executor} = Evaluate str("example.com:80/wd/hub")
它应该会成功。
我通过 docker 在 AWS ec2 上构建了一个 Selenium Grid 云服务器, 和 DNS 指向 CloudFlare。
我使用 Selenium Grid API 来验证服务器状态。
$ curl -X GET https://<my-host>/status
Service looks well
但是当我 运行 robotframework
时我无法连接到服务器这是我的代码示例。
Open Docker Browser
[Arguments] ${browserURL} ${browserName}=${NONE}
${browserName} = Evaluate "${browserName}".capitalize()
${browserOptions} = Evaluate sys.modules['selenium.webdriver'].${browserName}Options() sys, selenium.webdriver
Call Method ${browserOptions} add_argument --headless
Call Method ${browserOptions} add_argument --ignore-certificate-errors
Call Method ${browserOptions} add_argument --start-maximized
Call Method ${browserOptions} add_argument --allow-insecure-localhost
${options} = Call Method ${browserOptions} to_capabilities
Set To Dictionary ${options} browserName ${DEFAULT_BROWSER}
Set To Dictionary ${options} platform ${DEFAULT_PLATFORM}
${executor} = Evaluate str("https://<my-host>")
${webdriver} = Create Webdriver Remote alias=${browserName} desired_capabilities=${options} command_executor=${executor}
Go to ${browserURL}
This is error log
这似乎有一些 SSL 错误。 试了很多方法还是不行 有人也有这个问题吗? 谢谢。
我找到了解决方案,我更新了我的脚本。 并将 AWS 设置从 HTTPS 更新为 HTTP
${executor} = Evaluate str("example.com:80/wd/hub")
它应该会成功。