首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >AttributeError:'GraphAPI‘对象没有属性'search’

AttributeError:'GraphAPI‘对象没有属性'search’
EN

Stack Overflow用户
提问于 2017-09-17 05:41:57
回答 2查看 2.6K关注 0票数 2

有人问过这个问题,但从来没有回答过。

代码语言:javascript
运行
复制
import facebook
graph = facebook.GraphAPI(access_token="your token",version="2.7")

在Facebook python页面上,我得到了以下代码:

代码语言:javascript
运行
复制
# Search for places near 1 Hacker Way in Menlo Park, California.
places = graph.search(type='place',
                      center='37.4845306,-122.1498183',
                      fields='name,location')

# Each given id maps to an object the contains the requested fields.
for place in places['data']:
    print('%s %s' % (place['name'].encode(),place['location'].get('zip')))

这是链接

但是,它不起作用。我不明白为什么。错误读取

代码语言:javascript
运行
复制
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-21-56959958831f> in <module>()
      1 # Search for places near 1 Hacker Way in Menlo Park, California.
----> 2 places = graph.search(type='place',
      3                       center='37.4845306,-122.1498183',
      4                       fields='name,location')
      5 

AttributeError: 'GraphAPI' object has no attribute 'search'

这是什么意思?为什么这个例子行不通?我似乎找不到关于GraphAPI类的结构细节的文档,但我认为搜索是其中的一部分。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-09-18 14:00:37

这是因为自2016年以来,软件包所有者还没有为这个SDK发布正式版本。

https://pypi.python.org/pypi/facebook-sdk

所以您的最新版本是2.0.0。

代码语言:javascript
运行
复制
pip freeze | grep "facebook-sdk"
facebook-sdk==2.0.0

如果您想继续使用此包,则需要使用git回购的安装说明

代码语言:javascript
运行
复制
virtualenv facebookenv
source facebookenv/bin/activate
pip install -e git+https://github.com/mobolic/facebook-sdk.git#egg=facebook-sdk

那么在Python中,您应该能够正常地使用它。

代码语言:javascript
运行
复制
>>> import facebook
>>> graph = facebook.GraphAPI(access_token="YOUR_TOKEN", version="2.10")
>>> graph.search(type='place', center='37.4845306,-122.1498183', fields='name,location')
{u'paging': {u'cursors': {u'after': u'MjQZD'}, u'next': u'https://graph.facebook.com/v2.10/search?access_token=YOUR_TOKEN&fields=name%2Clocation&type=place&center=37.4845306%2C-122.1498183&limit=25&after=MjQZD'}, u'data': [{u'id': u'166793820034304', u'name': u'Facebook HQ', u'location': {u'city': u'Menlo Park', u'zip': u'94025', u'country': u'United States', u'longitude': -122.1501, u'state': u'CA', u'street': ...
票数 6
EN

Stack Overflow用户

发布于 2020-05-18 04:21:06

我的墙-post命令也有同样的问题,facebook-sdk 3+没有工作,所以

pip安装facebook=2.0.0解决了这个问题

代码语言:javascript
运行
复制
pip uninstall facebook-sdk
pip install facebook-sdk==2.0.0 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46261083

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档