2012-02-25 10 views
2

一部の友人と私は、ユニにマシンでの作業を簡単にする一連のスクリプトを作成しています。これらのツールの1つは現在Nokogiriを使用していますが、これらのツールをできるだけ設定の少ないすべてのマシンで実行するために、ユーザーにRVMとカスタム宝石をインストールするのではなく、ネイティブのhtmlパーサーを見つけようとしていますほとんどのユーザーのディスクスペースの制限のため)。Rubyコアライブラリを使用してHTMLを解析しますか? (つまり、宝石は必要ありません)

Nokogiri/Hpricot /にはかなり制限されていますか?私たちのニーズに合った独自のカスタムパーサを書くだけでよいでしょうか?

乾杯。

編集:ここに私の検索で逃した投稿がある場合は、私に教えてください!そう。

XMLパーサよりも悪いマークアップのより寛容でなければならないあなたがきちんとしてもHTMLを実行することができルビーSTDLIB
HTMLパーサにはHTMLパーサはありません...時々

+1

に速くREXMLを作ることに取り組んでいましたオープンソースでは、あなたはいつでも宝石から必要なものを抽出し、カスタムパーサーで使用することができます。その後、あなた自身のコードを提供する必要があります。 –

+0

あなた自身の書き込みをお勧めします。 –

+0

既存の魂を使う方がはるかに信頼できるでしょう。 @MarcTalbotが言っていることは鍵です。もし宝石がオープンソースであれば、あなたはあなたのアプリケーションにソースをコピーすることができます(非GPLライブラリを必要としないと仮定します)。 – Linuxios

答えて

1

効果的なものを見つけることがあまりにも大きいです(http://tidy.sourceforge.net)
HTMLを整理し、有効なマークアップを生成する
これは今

REXMLが最後、鋸山よりもはるかに遅いSTDLIBであるREXML :-)を介して読み出すことができます2009年にチェックされた
サムR

良い方法は
http://gembundler.com/bundle_package.htmlを見て、カピストラーノ(またはそのようないくつかの)を使用して、より良い展開を持っているだろうけれどもubyは宝石が全てであることを考えるとプロビジョニングサーバ

+0

配備の問題点は、大学管理のマシンでツールを実行できることです。何かをインストールする必要がある場合は、ユーザーのホームディレクトリにインストールする必要があります。これは一定のスペースに限られています。 RVMのようなカスタム宝石をインストールする部屋。 これはRailsではなく純粋なルビーです。 – shearn89

+0

別のオプションは、APIを作成して使用することです。利点は、コードが1台のマシンにのみ配備され、スペースを節約できることです。ベンチマークAPI呼び出しの速度を – deepak

+0

これらはツールの種類ではありません。使いやすいツールに 'lpr'をまとめたようなコマンドラインユーティリティです。しかし、ありがとう。 – shearn89

関連する問題