Skip to content

Instantly share code, notes, and snippets.

@diasjorge
Last active September 25, 2019 12:25
Show Gist options
  • Save diasjorge/02a6b6f651a7d117bd679755a3605d01 to your computer and use it in GitHub Desktop.
Save diasjorge/02a6b6f651a7d117bd679755a3605d01 to your computer and use it in GitHub Desktop.
Add redirect_uri to google oauth credentials with Selenium
require 'selenium-webdriver'
urls = ['https://example.com']
CREDENTIALS_PAGE = 'https://console.cloud.google.com/apis/credentials/oauthclient/XXXXXXXXXXXXXXXXXXXXX'
driver = Selenium::WebDriver.for(:chrome)
driver.get(CREDENTIALS_PAGE)
wait = Selenium::WebDriver::Wait.new(:timeout => 60) # seconds
input = wait.until { driver.find_element(:css, ".ng-empty.ng-valid-valid-subdomain") }
def url_exists(driver, url)
!driver.find_elements(:xpath, "//*[contains(text(), '#{url}')]").empty?
end
begin
urls.each do |url|
next if url_exists(driver, url)
input.click
input.send_keys(url)
input.send_keys("\n")
wait.until { url_exists(driver, url) }
sleep(0.1)
end
rescue StandardError => e
require 'byebug'
debugger
0
end
submit = driver.find_element(:css, ".p6n-loading-button-regular-text")
submit.click
sleep(10)
driver.quit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment