2013-08-08 4 views
0

Voici les codes pour la connexion proxy fonctionne avec watir WebDriver:watir WebDriver essayer proxy catch

b = Watir::Browser.new :chrome, :switches => %w[--proxy-server=xxx.xxx.xx.xxx:80] 

Maintenant, si le proxy ne fonctionne pas, comment puis-je attraper cela et essayer d'autre? comme essayer et attraper ou avec des cas?

Répondre

1

Il semble que vous puissiez seulement déterminer si le proxy fonctionne en accédant à une page. Si Chrome ne peut pas se connecter au proxy, il affiche un message "Impossible de se connecter au serveur proxy". Par conséquent, vous pouvez essayer:

1) Aller à une page en utilisant un proxy 2) Vérifiez le message 3) Si le message apparaît, essayez un autre proxy 4) Si le message ne semble pas, les œuvres de proxy

Par exemple, ce qui suit tentera le premier proxy, qui échouera. Il va ensuite essayer le proxy suivant, etc.

proxy_servers = ['111.111.11.111:80', '222.222.22.222:80'] 

browser = nil 

proxy_servers.each do |proxy| 
    browser = Watir::Browser.new :chrome, :switches => ["--proxy-server=#{proxy}"] 

    # Try going to a page 
    browser.goto 'http://www.google.ca' 

    #If Chrome says "Unable to connect to the proxy server", try another one 
    if browser.text.include?('Unable to connect to the proxy server') 
     browser.close 
    else 
     break 
    end 
end 

# Throw an exception if a valid proxy server cannot be found 
raise 'No valid proxy servers found' unless browser.exists?