2010-01-13 5 views
3

Quelqu'un at-il utilisé la gemme Mechanize sur un site nécessitant le protocole SSL? Lorsque j'essaie d'accéder à un tel site, Mechanize essaie d'utiliser le HTTP standard, ce qui entraîne des redirections sans fin entre http: // et https: //.Mécaniser sur le site HTTPS

Répondre

0

Je viens d'essayer Mechanize avec le site Web de mon entreprise. La page d'accueil est HTTP, mais elle contient un lien, "login client", qui envoie le navigateur à une page HTTPS. Cela a bien fonctionné. Le code est:

#!/usr/bin/ruby1.8 

require 'rubygems' 
require 'mechanize' 

agent = WWW::Mechanize.new 
page = agent.get("http://www.not_the_real_url.com") 
link = page.link_with(:text=>"CUSTOMER LOGIN") 
page = link.click 
form = page.forms.first 
form['user_login'] = 'not my real login name' 
form['user_password'] = 'not my real password' 
page = form.submit 
+0

@the Tin Man Merci pour l'édition. Il semble que ma capacité à appuyer sur SHIFT était quelque peu ... manquante à l'époque. –

3

Mécaniser fonctionne très bien avec HTTPS. Essayez de définir

agent.log = Logger.new(STDOUT) 

pour voir ce qui se passe entre Mechanize et le serveur. Si vous avez encore des problèmes, postez un échantillon du code et quelqu'un vous aidera.