2011-08-02 47 views
3

當我使用search.web YQL表,我總是得到錯誤:爲什麼`search.web` YQL表不再有效?

No definition found for Table search.web

我YQL語句

。例如,即使使用SELECT url FROM search.web(0,10) WHERE query="stackoverflow"

那麼我假設雅虎停止search.web還是BOSS?有什麼選擇?還有類似的方式來抓取網頁嗎?

回答

3

我們可以在YQL博客閱讀:

We’ve removed all search tables that relied on the BOSS v1 API (search.web, search.image, and search.news) as the aforementioned BOSS v1 no longer exists as of today (http://www.ysearchblog.com/2011/06/30/you-asked-for-this-boss-v2-updates/).

For those of you relying on those tables please consider using the community BOSS v2 table (https://github.com/yql/yql-tables/blob/master/boss/boss.search.xml).

Thanks -YQL Team

來源:Search tables and BOSS v1 in YQL Blog


因此,你應該移動到像Ÿ其他搜索服務! BOSS v2。如上所述,已經有用於打開數據表,以及一個例子查詢看起來像:

SELECT * FROM boss.search WHERE query="stackoverflow" 
AND ck="your oauth consumer key" 
AND secret="your oauth secret" 

另一種方法是使用Bing搜索:

SELECT * FROM microsoft.bing.web WHERE query="stackoverflow" 
1

BOSS 1.0版API現在已經貶值(如在YQL Blog),所以你應該使用完全相同的BOSS v2 API,但該表被稱爲boss.search,並且它在Yahoo YQL Dev Console(只需激活顯示社區表或在GitHub檢查)可用。

要使用BOSS V2 API,你需要有自己的消費者主要消費者祕密可在Yahoo Dev Apps通過創建一個新的應用程序產生。

使用範例:

select * from boss.search where q = "sam pullara" AND (ck = 'ConsumerKey') AND (secret = 'SECRET');