2012-03-07 7 views
2

にソースデータを渡すことで助けが必要 - 私は、彼らがJSON構造の局のリストを持っていることがわかりhttps://web.barclayscyclehire.tfl.gov.uk/maps私は、このWebページから、局のリストを取得しようとしているのRubyでHTTPSのURLに接続し、鋸山

JavaScriptで。だから、私はページに接続して、JSONを使ってJavaScriptを取得してJSONを個別に解析するためにNokogiriにデータを渡そうとしています。 HTTPSに接続して、私はここで入手でき、このコードを使用鋸山にデータを渡す

- 私は、デバッガは、私が持っているすべてのブレークポイントで停止することができます前に、AptanaのStudioの3でデバッグしようとすると、しかしhttps://gist.github.com/1037492

require 'net/https' 
require 'nokogiri' 

url = "https://example.com" 
url = URI.parse(url) 
http = Net::HTTP.new(url.host, url.port) 
http.use_ssl = true if url.port == 443 
http.verify_mode = OpenSSL::SSL::VERIFY_NONE if url.port == 443 
path = url.path 
path += "?" + url.query unless url.query.nil? 
res, data = http.get(path) 

case res 
    when Net::HTTPSuccess, Net::HTTPRedirection 
    # parse link 
    doc = Nokogiri::HTML(data) 
    # do what you want ... 
    else 
    return "failed" + res.to_s 
end 

を、それは私に無効な返品エラーを与える終了します。そのコードに何か問題がありますか? それはHTTPSに接続してノコギリにデータを渡す最善の方法ですか?

答えて

6

このようにしてみてください。

require 'nokogiri' 
require 'open-uri' 
require 'openssl' 

OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE 
doc = Nokogiri::HTML open(https_url) 
それは素晴らしいですが、私はこの警告を取得した作品
+0

- '警告:すでに一定のVERIFY_PEER'を初期化し、'キャッチされない例外をデバッグ:ときに私は今、このエラーを取得する:のスーパークラスのミスマッチRemoteInterfaceクラス – devcoder

+0

無視することができますが、そのエラーは以前は見たことがないので、デバッグの意味が分かりません。 – pguardiario

+0

デバッグすると、AptanaなどのIDEでデバッグしようとしています。 – devcoder

関連する問題