Je courais pour OpenURI::HTTPError: 403 Forbidden
erreur lorsque je tente de open
une URL avec une virgule (ou d'autres caractères spéciaux comme .
). Je suis capable d'ouvrir la même URL dans un navigateur.Ouverture d'une URL WIKI par une virgule en utilisant `open-uri`
require 'open-uri'
url = "http://en.wikipedia.org/wiki/Thor_Industries,_Inc."
f = open(url)
# throws OpenURI::HTTPError: 403 Forbidden error
Comment puis-je échapper une telle URL?
J'ai essayé d'échapper l'URL avec CGI::escape
et j'obtiens la même erreur.
f = open(CGI::escape(url))
Bien que, le tester, je reçois aussi un 403. Je vais continuer d'y travailler ... – Matchu
I avait essayé 'CGI :: escape' avec des résultats similaires. J'ai oublié de l'ajouter à ma question. –
Vous pourriez vouloir voir quelle sortie vous obtenez. Je me souviens il y a quelques semaines que Wikipedia a commencé à me donner des erreurs 403 lors de demandes de Ruby parce que je ne fournissais aucune chaîne user-agent, et la sortie l'a dit. – Matchu