Ruby用のcURLライブラリはありますか?RubyのcURLに相当しますか?
答えて
使用OpenURIと
open("http://...", :http_basic_authentication=>[user, password])
HTTP認証が必要なサイト/ページ/リソースにアクセスします。
CurbおよびCurl::Multiは、RubyのcURLバインディングを提供します。
非常に高レベルなWebスクラップクライアントであるMechanizeもあり、NokogiriをHTML解析に使用しています。あなたはまた、Rest-Client
は、順番にlibcurlのを使用しています縁石のラッパーです。 Curb-fuは縁石より何を提供していますか?文法的な砂糖だけがたくさんありますが、それはしばしばあなたが必要とするものです。
Heroku |そのようなアプリはありません – Ramy
Curb-fuで顔をしているかもしれません
さらに最近の回答を追加すると、HTTPClientはlibcurlを使用する別のRubyライブラリであり、並列スレッドと多くのカールメイドをサポートしています。私は、HTTPClientとTyphoeusを、自明ではないアプリケーションに使用します。
HTTP clientsは、さまざまなクライアントに関する意思決定に役立つ優れたページです。
eat
逸品OpenURIのための "交換" である:
# first do gem install eat
require 'eat'
eat('http://yahoo.com') #=> String
eat('/home/seamus/foo.txt') #=> String
eat('file:///home/seamus/foo.txt') #=> String
それはボンネットの下にHTTPClient使用しています。また、いくつかのオプションがあります:
eat('http://yahoo.com', :timeout => 10) # timeout after 10 seconds
eat('http://yahoo.com', :limit => 1024) # only read the first 1024 chars
eat('https://yahoo.com', :openssl_verify_mode => 'none') # don't bother verifying SSL certificate
私はこれを動作させることはできません。 'require ':そのようなファイルを読み込むことはできません - eat(LoadError) – Lumbee
ここに私はいくつかのファイルを取得するために書いた小さなプログラムです。
base = "http://media.pragprog.com/titles/ruby3/code/samples/tutthreads_"
for i in 1..50
url = "#{ base }#{ i }.rb"
file = "tutthreads_#{i}.rb"
File.open(file, 'w') do |f|
system "curl -o #{f.path} #{url}"
end
end
私はそれがもう少し雄弁になるかもしれないが、それが目的であることを知っている。見てみな。今日私は、ソースのダウンロードに含まれていない本のコードを取得するために各URLに行くのがうんざりしていたので、今日一緒にそれを一緒に敷き詰めました。
あなたはcurl
コマンドとしてあなたの要求を作成する方法を知っている場合は、ルビーにそれを回すことができるオンラインツール(2.0+)があるコード:-H/--header
、-d/--data
:curl-to-ruby
現在のところ、それは次のオプションを知っています、-I/--head
,-u/--user
,--url
および-X/--request
。それはopen to contributionsです。
- 1. cURLからPHPに相当する
- 2. cURLコマンドのURL(文字列)に相当しますか?
- 3. Pythonの 'Requests'に相当する 'curl -o'
- 4. ruby file_get_contents相当の
- 5. Pygame相当のRuby?
- 6. Rubyに相当するPython "_"
- 7. PHP CURLライブラリでcurl --resolve相当のものがあります
- 8. C#でcurl -u相当?
- 9. curlコマンドに相当するAjaxリクエスト
- 10. curl関数に相当するfile_get_contents
- 11. JavaのRubyの__FILE__に相当しますか?
- 12. GroovyのElvis(?:)演算子のRubyに相当しますか?
- 13. cURLのHTTP認証に相当username:password
- 14. ASP.NETこのcURLコマンドに相当します
- 15. RubyのJavaストリームに相当しますか?
- 16. Tie :: FIleのRubyに相当しますか?
- 17. Rubyのirb相当のPerl?
- 18. Rubyは "相当"です
- 19. HTML PurifierはRuby on Railsに相当しますか?
- 20. RubyのGemfile相当物
- 21. curlコマンドのjavaに相当するものは何ですか?
- 22. HTTPリクエストのCurl -u相当のもの
- 23. Rubyのサンドイッチブロックコードに相当するC#式。
- 24. Rubyのa ||に相当するJQuery b
- 25. PHPの$に相当するRuby
- 26. RubyのString#scanに相当するJavaScript
- 27. Rubyの 'method_missing'に相当するPython
- 28. Rubyの "pass"に相当する
- 29. RubyのObject#tapに相当するjQueryはありますか?
- 30. Swiftに相当するRubyのinstance_evalはありますか?
正直なところ、ライブラリがopen-uriを内部的に使用しているのを見ると、私はそのライブラリを使用しません。深く欠陥のあるURIパーサの上に構築された深く欠陥のあるライブラリです。 IRBでの使用には問題ありません。 –
@ Sporkmonger:まあ、それは私たちが持っているものです。Net :: HTTPの未加工のものは何ですか? – apostlion
Net :: HTTPまたはPatronまたはCurb、またはその他の回答に記載されている他のライブラリを使用します。この回答がどのように投票されたか受け入れられたかは、私を超えています。 –