2014-12-06 41 views
1

我使用Python调用Facebook API。这是一个两部分问题。Python:以多个条件搜索Facebook API

让我们先从:

import facebook 
graph = facebook.GraphAPI('token') 
criteria = {"whatever I'm passing"} 
print graph.request('/search', criteria) 

----第1部分----

我不能完全弄清楚如何定位搜索参数传递给graph.request()

API v2.2文档描述位置为:

GET graph.facebook.com 
    /search? 
    type=location& 
    center=37.76,-122.427& 
    distance=1000 

但如果我尝试

criteria = {'q': {'center': '37.76,-122.427'}, 'type': 'location'} 

我得到facebook.GraphAPIError: (#12) location search is deprecated for versions v2.0 and higher,这没有任何意义,我。

如果我尝试:

criteria = {'q': {'center': '37.76,-122.427'}, 'type': 'place'} 

它返回一个空列表。

----第2部分----

如何搜索一次多件事情?例如,一个人搜索会是什么样子:

criteria = {'q': 'john smith', 'type': 'user'} 

这工作得很好,但现在我的'q'参数由名称占用'type'由搜索类型占据。我如何将第1部分和第2部分结合起来执行用户搜索和他/她的位置?

+0

如果文件说,它应该工作,并没有文件在https://developers.facebook.com/bugs – WizKid 2014-12-06 20:31:39

+0

@WizKid的错误我是小白,所以我总是认为我做错事。我声称这是一个API错误将像其他人声称他们的问题是在编译器中。 – AutomaticStatic 2014-12-07 18:33:41

+0

如果API v2.2文档声称以某种方式执行,并且出现错误,表示位置搜索已被弃用,这听起来像是一个文档错误 – WizKid 2014-12-07 22:27:31

回答