I am trying to automate a Zoom login on the browser using Selenium in Python.
The manual steps are as follows:
Enter the email and password.
Click in 'Sign in' button.
When I try to do the same steps using Selenium I am facing an issue on the step #1.
The https://www.zoom.us/signin page opens up. But then the page refreshes itself and the new URL contains two query parameters as follows: https://www.zoom.us/signin?_x_zm_rtaid=<value>&_x_zm_rhtaid=<value>. When the script then enters the correct email and password, the page throws a HTTP 401 error. This only happens during Selenium automation. If I do a manual login, https://www.zoom.us/signin page does not refresh itself, accepts the credentials and logs in successfully.
Here is what I tried. When the page refreshes and adds the query parameters and then gives the HTTP 401 error, I intervened manually and removed the query parameters and loaded the https://www.zoom.us/signin page again. This time, it does not refresh itself, accepts the credentials entered manually, logs in successfully and my Python Selenium script continues executing successfully. So I thought that I could automate this manual removal of query parameters and reloading the page. However, I am not able to detect that the page has refreshed with query parameters in Selenium. I tried the following to detect that the page refreshed:
wait.until(expected_conditions.url_contains('x_zm_rtaid'))
But the script keeps waiting for this condition before actually refreshing the page and then times out.
I would appreciate any help or direction in resolving this issue. Please let me know if any additional information is required from my side.
Thank you!