不幸的是,我不知道一種方式,您可以在響應中獲得key =>值對,其中key是url和value是html響應。但是,您可以嘗試以下查詢並查看它是否符合您的使用案例:
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'"
試試吧here。你可以做的是在觸發查詢之前,維護url
的數組中的訂單,如queries
,如 ['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>
所以在最後,你可以從YQL遍歷數組A
和響應。數組A
的第一個元素應該對應於該YQL響應的第一個results
(內部結果)元素。即你正在從兩個數組創建一個hashmap。我知道答案很長,但我認爲這是必要的。如果有任何混淆,請告訴我。
我不明白。 「*但是它們加載的地址不會出現在任何地方*」您是否期望上面的代碼能夠這樣做? 「*找出哪個網頁屬於哪個網址*」eing ??? – Oriol
我以爲很清楚,對不起!讓我再解釋一遍。我加載了一堆網址,其中一些被加載,然後加載的網址被打包成一個數組併發回給我。問題是:我沒有暗示我詢問了哪個網址與數組中的每個元素相對應。因此,我不再需要代碼,而是需要使用(url,data)的幾對,以便知道哪些數據對應於哪個url,哪些url未加載。 –