3

当我使用search.webYQL 表时,我总是得到错误:

未找到表 search.web 的定义

在我的 YQL 语句中。即使使用SELECT url FROM search.web(0,10) WHERE query="stackoverflow"例如。

所以我假设雅虎停产search.web或老板?有哪些替代方案?是否还有类似的爬网方式?

4

2 回答 2

3

我们可以在 YQL 博客中阅读:

我们已经删除了所有依赖于 BOSS v1 API(search.web、search.image 和 search.news)的搜索表,因为上述 BOSS v1 已不存在(http://www.ysearchblog.com/ 2011/06/30/you-asked-for-this-boss-v2-updates/)。

对于那些依赖这些表的人,请考虑使用社区 BOSS v2 表(https://github.com/yql/yql-tables/blob/master/boss/boss.search.xml)。

谢谢-YQL 团队

来源:YQL 博客中的搜索表和 BOSS v1


因此,您应该转移到另一个搜索服务,例如 Y!老板 v2. 如上所述,已经为此打开了数据表,示例查询如下所示:

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

另一种选择是使用必应搜索:

SELECT * FROM microsoft.bing.web WHERE query="stackoverflow"
于 2011-08-09T09:48:54.923 回答
1

BOSS v1 API 已被贬低(如在YQL 博客中),因此您应该使用完全相同的 BOSS v2 API,但该表被调用boss.search并且它在Yahoo YQL 开发控制台中可用(只需激活Show Community Tables或在GitHub 上查看) .

要使用 BOSS v2 API,您需要拥有自己的Consumer KeyConsumer Secret,这可以在Yahoo Dev Apps通过创建一个新应用程序来生成。

示例用法:

select * from boss.search where q = "sam pullara" AND (ck = 'ConsumerKey') AND (secret = 'SECRET');
于 2015-02-18T22:12:11.423 回答