1

次の方法で、OSXアプリケーションDevonthinkをZoteroに結び付けるオープンソースワークフローを作成しています。

  1. OS Xアプリdevonthink内で呼び出されたAppleScriptは、シェルを介してRubyスクリプトを実行します
  2. このRubyスクリプト(古いapplescriptよりもはるかに高速で、これらの種類のものに適しています)は、API呼び出しを行い、Atom形式の応答データをダウンロードします。 サンプルデータ
  3. 次に、rubyスクリプトはAtomファイルを解析し、このデータのサブセットを抽出して出力します。
  4. Applescriptは、Rubyスクリプトの出力をキャプチャし、さまざまな方法でdevonthinkと対話して、データを同期します。

ここで助けが必要なのは、このワークフローのAtomファイル部分を解析することです。

Feedzirraなど、RubyでAtomを解析するための優れたライブラリがいくつかあることは知っていますが、Gemをインストールする必要があります。コマンドラインやgemのインストールなどにほとんど、またはまったく慣れていない可能性が高いユーザーに、applescript + ruby​​コンボを配布します。エンドユーザーがスクリプトを簡単にドロップできるように、これをできるだけ簡単にしたいと思います。彼らのapplescriptフォルダとrubyスクリプトは、それ以上のアクションなしで一緒に実行されます。

これを考えると、スクリプトのエンドユーザーのためにgemやその他のタスクをインストールする必要なしにRubyでAtomファイルを解析するための最良のソリューションの推奨事項は何ですか(スクリプトの本文に簡単に含めることができる解析コードはありますか?たとえば、スクリプト自体?)。

答えが示唆するかもしれないと私が想像するいくつかの可能な解決策:

a)ネイティブのruby機能を使用してxmlを解析します

b)私のrubyスクリプトに直接コピー/貼り付けることができるいくつかのメソッドを使用します

よろしくお願いします。

4

2 に答える 2

1

1つのクエリで質問が多すぎると考えてください。問題をもう少し細かく分けて、別の投稿で主な質問をしてみてください。

ところで、NokogiriはRuby用の優れたXMLパーサーです。

于 2012-11-25T11:44:57.253 に答える
1

私はあまりルビーな人ではありませんが、ライブラリのソースファイルを取得して、それらを.rbファイルに入れ、おそらくいくつかの小さな変更を加えて、残りのソースのライブラリを使用できるはずです。手がかりは、小さくて依存関係が多すぎないライブラリを見つけることです。

おそらくシンプル-RSSは機能しますか?

于 2012-11-25T15:38:05.510 に答える