1

私はYQLにかなり慣れていないので、信頼性に問題があります。(Google XML ソースより)

私のリクエストは約 50% の確率で失敗します。これがなぜなのか、どうすれば解決できるのかを知りたかったのです。

私の最初の考えは次のとおりです。

  • Google は YQL がリクエストを成功させるのを妨げていますか?
  • YQL自体はあまり信頼できないのですか?

出力または YQL クエリを次に示します (アドレス バーに配置し、更新を続けて成功/失敗を確認できます)。

YQL JSON


これは私が使用しているYQLステートメントです

select * from xml
    where url='http://www.google.com/ig/api?weather=CM12QE'

また、 YQL コンソールで JSON オプションを選択しています。


私は何か間違ったことをしていますか?YQL は、アプリケーション内でサービスとして使用するにはあまり信頼できませんか? 別のリクエストを行うことなく、望ましい結果を保証する良い方法はありますか?

4

2 に答える 2

2

Google は YQL がリクエストを成功させるのを妨げていますか?

多くの場合、YQL が問題ではなく、データ ソース (それが何であれ) が問題の根源です。この場合、Google は、ユーザーと YQL が期待するものとは異なる応答を返しています。これは、目的の XML ではなく、CAPTCHA 入力フォーム ( example )を含むページへのリダイレクトが YQL エンジンに表示されているためです。

YQL自体はあまり信頼できないのですか?

私は長年 YQL を使用してきましたが、最も頻繁に発生する問題の原因は YQL ではなく、外部データ ソースです。ただし、YQL は時々フォールオーバーする可能性があります。

私に何ができる?

最初のステップは、問題が実際に何であるかを判断することです。基本的な手順には、診断とデバッグを有効にすることが含まれます。コンソール、またはYQL URL にdiagnostics=trueチェックボックスがあります。debug=trueこれらは、フェッチされた外部リソースとそのステータス情報の詳細を示します。通常、問題を特定するには診断で十分ですが、デバッグの詳細もあれば、YQL と外部リソースとの相互作用の最もきめ細かな詳細が得られるため、これも役立つでしょう。

YQL コンソールの診断とデバッグのチェックボックスの場所

こちらもご覧ください

于 2012-04-10T14:10:37.827 に答える
1

リクエストをもう少しデバッグした後、&diagnostics=trueGoogle が YQL サーバーをブロックしており、キャプチャによる人間の検証をリクエストしていることがわかりました。

たとえば、このリンクを参照してください。 http://www.google.com/sorry/?continue=http://www.google.com/ig/api%3Fweather%3DCM12QE

ここでの答え&diagnostics=trueは、URL の最後で使用することでした。追加のデバッグ情報を取得します。

興味深いのは、コンソールから YQL を実行した場合の成功率が約 100% であることです。

于 2012-04-10T13:29:46.420 に答える