-
-
Notifications
You must be signed in to change notification settings - Fork 8.4k
[🐛 Bug]: Selenium Manager - SE_BROWSER_MIRROR_URL/SE_DRIVER_MIRROR_URL don't suffice for downloading chrome binaries >= 115 from mirror #13460
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
@daniel-stockhausen, thank you for creating this issue. We will troubleshoot it as soon as we can. Info for maintainersTriage this issue by using labels.
If information is missing, add a helpful comment and then
If the issue is a question, add the
If the issue is valid but there is no time to troubleshoot it, consider adding the
If the issue requires changes or fixes from an external project (e.g., ChromeDriver, GeckoDriver, MSEdgeDriver, W3C),
add the applicable
After troubleshooting the issue, please add the Thank you! |
Let me make sure we're on the same page since some of the things here seem confusing.
|
Thanks for the quick reply 🙂
python selenium
You're correct, I removed it.
Yes, my original post was confusing: I wrote about chromedriver ENV vars but then posted log output of a browser download. Explanation
"Just" mirroring https://googlechromelabs.github.io/chrome-for-testing/known-good-versions-with-downloads.json generally can't work for downloading browsers/drivers from a mirror, because all these JSON files ending with
Leading to Selenium Manager correctly using the mirror for fetching
As an example for a possible solution: node-chromedriver uses an additional ENV var |
The idea is that you create your own "last-known-good-versions-with-downloads.json" file with the download locations you want to use, and put its location in the environment variable. That approach does seem like a lot of work but it is doable, it is much more flexible than requiring a specific "version/platform/name" format, and it is much easier for us to maintain toggling a URL. |
Selenium Manager 会正确地从镜像服务器获取 The Selenium Manager will correctly retrieve 所以,如果想要 Selenium Manager从指定的服务器下载文件,需要完成2个步骤: 1,在一个镜像服务器上提供 2,修改 我已经这么做了,目前工作得很好。 另外,根据实践经验,还应该同时镜像 |
Thank you both for the replies. We're gonna implement it like that on our end and it'll be fine - it just still feels like the implementation of this Selenium Manager feature is incomplete and the required search-and-replace of the binary URLs should just happen on-the-fly as part of Selenium Manager. Seems unnecessary to require everyone using this feature to setup such a "special" mirror - even if not complicated in and of itself it's just another thing to maintain on the user end. But oh well 🤷♂️ |
I agree it could be easier, but we're prioritizing other features. I opened a new ticket to track the feature request. |
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
What happened?
The mirrored JSON files still include the original download URLs, which results in
chrome-linux64.zip
still being downloaded from the original URL.Of course this is a general issue with chromelabs/chrome-for-testing mirrors, but there are solutions for it. For example node-chromedriver uses an additional ENV variable to handle this issue:
CHROMEDRIVER_CDNURL
is analog toSE_CHROMEDRIVER_MIRROR_URL
CHROMEDRIVER_CDNBINARIESURL
has no analog in Selenium Managernode-chromedriver uses
CHROMEDRIVER_CDNBINARIESURL
to put together actual mirror download URLs: https://github.com/giggio/node-chromedriver/blob/main/install.js#L131Am I wrong to assume that without such a variable in Selenium Manager we could only solve it by providing a mirror for
known-good-versions-with-downloads.json
(and the other-with-downloads.json
files) which supplies the files with replaced download URLs?Would be great if Selenium Manager would handle this issue like node-chromedriver does 🙂
How can we reproduce the issue?
Use SE_CHROME_MIRROR_URL with a mirror for the JSON files of https://github.com/GoogleChromeLabs/chrome-for-testing#json-api-endpoints
Relevant log output
Operating System
Ubuntu
Selenium version
Python webdriver-manager-4.0.1
What are the browser(s) and version(s) where you see this issue?
At least all > 114
What are the browser driver(s) and version(s) where you see this issue?
At least all > 114
Are you using Selenium Grid?
No response
The text was updated successfully, but these errors were encountered: