0

信じられないほど時間がかかるウェブサイトに約200の商品フィードを読み込んでいます。これを行うための新しい方法を(ノコギリの外で)探しています。私はFeedzirraを調べています。現在、Feedzirra0.3.1を使用しています。問題なくインストールできます。

次のXML製品フィード(および他の多くのフィード)を解析したいと思います。

feed = "http://adtraction.com/productfeed.htm?type=feed&format=XML&encoding=UTF8&epi=0&zip=0&cdelim=tab&tdelim=singlequote&sd=0&apid=52561763&asid=257117013"

feed_obj = Feedzirra::Feed.fetch_and_parse(feed)

しかし、私がそうするとき、私はnil応答しか得られません。応答までに数秒かかるため、少なくともフィードをフェッチしているようです。

私の質問:

  1. これにFeedzirraを使用することは可能ですか?または、FeedzirraはRSSフィードにのみ使用できますか?
  2. Feedzirraを使用してそれらをより速く読み取り、解析することを期待できますか、それとも行き止まりですか?
  3. 同じ応答が得られますか、および/または問題が何であるかを確認できますか?

編集:コードを変更しましたが、実際にはアプリケーションで使用したものではありませんでした。

4

3 に答える 3

1

コードスニペットにはいくつかの欠陥があります。

  1. 1はRubyの変数ではなく、でFixnumあり、値を割り当てることはできません
  2. URLを文字列に変換して変数に割り当てるには、URLを括弧で囲む必要があります。
  3. usingあなたがそれを定義しない限り、私はそれがRubyのディレクティブではないと確信しています

コードを次のようなものに変更すると、おそらく機能するはずです。

first = "http://adtraction.com/productfeed.htm?type=feed&format=XML&encoding=UTF8&epi=0&zip=0&cdelim=tab&tdelim=singlequote&sd=0&apid=52561763&asid=257117013"
feed = Feedzirra::Feed.fetch_and_parse(first)

feedその場合、さらに作業できるある種のFeedzirraオブジェクトである必要があります。

于 2012-05-08T21:11:09.713 に答える
1

FeedzirraはNokogiriに基づくxml解析にsax-machineを使用しているように見えるため、純粋なnokogiriアプローチの代わりにそれを使用してそれほどパフォーマンスが向上する可能性は低いです。それが役立つ可能性があるのは、ホスト自身と協力することです。ヘッダーをかなり簡単に確認でき、変更がない場合はファイルを何度もプルする必要はありません。

タイムアウトしたため、空の応答が返される可能性があります。

于 2012-05-08T20:48:22.617 に答える
0

よく見ると、Feedzirraはブログフィード専用であり、私の問題には実際には当てはまらないようです。他のオプションを検討する必要があります。

于 2012-05-10T09:59:37.700 に答える