请求空结果问题

时间:2014-01-03 08:02:27

标签: python facebook-graph-api python-2.7

我有这个简单的python代码,它返回URL的内容并将结果存储为名为“file”的json文本文件,但它一直返回空结果。 我在这做错了什么?这只是一个简单的代码,我很失望。 我已经包含了导入Facebook,导入请求和导入json所需的所有导入。

url ="https://graph.facebook.com/search?limit=5000&type=page&q=%26&access_token=xx&__after_id=139433456868"

content = requests.get(url).json()

file = open("file.txt" , 'w') 

file.write(json.dumps(content, indent=1))
file.close()

但它一直将空的结果归还给我,我在这里缺少什么? 结果如下:

"data": []

有什么帮助吗?

1 个答案:

答案 0 :(得分:2)

工作正常:

import urllib2
accesstoken="CAACEdEose0cBACF6HpTDEuVEwVnjx1sHOJFS3ZBQZBsoWqKKyFl93xwZCxKysqsQMUgOZBLjJoMurSxinn96pgbdfSYbyS9Hh3pULdED8Tv255RgnsYmnlxvR7JZCN7X25zP6fRnRK0ZCNmChfLPejaltwM2JGtPGYBQwnmAL9tQBKBmbZAkGYCEQHAbUf7k1YZD"
urllib2.urlopen("https://graph.facebook.com/search?limit=5000&type=page&q=%26&access_token="+accesstoken+"&__after_id=139433456868").read()

我认为您在提出请求之前没有请求访问令牌。

如何查找访问令牌?

def getSecretToken(verification_code):

token_url = ( "https://graph.facebook.com/oauth/access_token?" +
                      "client_id=" + app_id +
                      "&redirect_uri=" +my_url +
                      "&client_secret=" + app_secret +
                      "&code=" + verification_code )
response = requests.get(token_url).content

params = {}
result = response.split("&", 1)
print result
for p in result:
    (k,v) = p.split("=")
    params[k] = v
return params['access_token']

你如何获得验证码?

    verification_code=""
if "code" in request.query:
    verification_code = request.query["code"]

if not verification_code:
    dialog_url = ( "http://www.facebook.com/dialog/oauth?" +
                       "client_id=" + app_id +
                       "&redirect_uri=" + my_url +
                       "&scope=publish_stream" )
    return "<script>top.location.href='" + dialog_url + "'</script>"
else:
    access_token = getSecretToken(verification_code)