残念ながら、キーが URL で値が html 応答である応答で key=>value ペアを取得する方法がわかりません。ただし、次のクエリを試して、ユース ケースに適合するかどうかを確認できます。
select * from yql.query.multi where queries="select * from html where url='http://www.whooma.net';select * from feed where url='http://www.dfdsfsdgsfagdffgd.com';select * from html where url='http://www.cnn.com'"
ここで試してみてください。できることは、クエリを実行する前に、url
soqueries
など
の配列で順序を維持すること['http://www.whooma.net','http://www.dfdsfsdgsfagdffgd.com','http://www.cnn.com']
です。この配列を呼び出すことができますA
。YQL クエリからの応答を反復処理すると、存在しない URL は null を返します。上記のクエリからのサンプル応答:
<results>
<results>
// Response from select * from html where url='http://www.whooma.net'. This should be some html
</results>
<results>
// Response from select * from feed where url='http://www.dfdsfsdgsfagdffgd.com'. This should be null.
</results>
<results>
// select * from html where url='http://www.cnn.com'. This should also be some html
</results>
</results>
結論として、配列A
と YQL からの応答を反復処理できます。配列の最初の要素は、その YQL 応答A
の最初の (内部結果) 要素に対応する必要があります。results
つまり、2 つの配列からハッシュマップを作成しています。答えが長いことは知っていますが、必要だったと思います。混乱がある場合はお知らせください。