相关:Facebook Python " ValueError: too many values to unpack"
很困惑,很想了解这个。。。在
我知道这个API URL将返回我想要的Json数据:“https://graph.facebook.com/search?q=moving&type=post&limit=10000&access_token=XXXXXX|XXXXXXX”
样本数据:
{"data":[{"id":"100003992227166_343136419162763",
"from":{"name":"Taiwo Babalola Oladele","id":"100003992227166"},
"story":"Taiwo Babalola Oladele shared Gloria Copeland's status update.",
"story_tags":{"0":[{"id":"100003992227166",
"name":"Taiwo Babalola Oladele",
"offset":0, "length":22, "type":"user"},],
"30":[{"id":"109580399076690",
"name":"Gloria Copeland",
"offset":30,"length":15,"type":"page"},
因此,我尝试将上面的API URL添加到下面的代码中,以构建一个.csv:
^{pr2}$我查到了:
Traceback (most recent call last):
File "./facebook_washer_dryer1.sh", line 43, in <module>
main()
File "./facebook_washer_dryer1.sh", line 34, in main
js = json.loads(data)
File "/usr/lib64/python2.6/json/__init__.py", line 307, in loads
return _default_decoder.decode(s)
File "/usr/lib64/python2.6/json/decoder.py", line 319, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib64/python2.6/json/decoder.py", line 338, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
[ec2-user@ip-172-31-46-164 ~]$
我明白相关链接上的人在说什么,但我想我有点不明白
当我定义我的搜索类时,我不确定我做错了。在
您甚至没有编写任何代码来构建URL,更不用说在该URL下载文档了。在
作为补充说明,您在这里发布的代码(以及在您最初的问题中)有一些
SyntaxError
使其无法使用。另外,您使用的是python2.6,但是定义的类没有基类,这意味着您将得到您不想要的经典类。我会边走边修。在首先,在},然后对它们不做任何操作。这对你没什么好处。如果要创建其他方法可以使用的变量,则必须创建对象的属性,而不是局部变量。像这样:
__init__
方法中,您创建了两个局部变量query
和{现在,您可以使用这些变量。但你必须实际使用它们。要将变量粘贴到格式字符串中,必须对该格式字符串调用
^{pr2}$.format
方法。像这样:所以,现在我们有了一个完整的URL,比如https://graph.facebook.com/search?q=moving&type=post&limit=10000&access_token=XXXXXX|XXXXXXX。到目前为止,还不错。但那仍然只是一个URL,一个字符串。您希望在URL的获取文档。为此,您需要调用一些函数来下载URL。像^{} :
现在我们有一个方法,您可以调用该方法从您的查询中构建一个URL,在该URL处查找资源,并从该资源返回数据。所以现在我们接近了。你可以这样称呼它:
然而,仍然有一个问题。那
type='post'
什么也做不了。您将其传递给search
。然后search
将其传递给make_search_url
。它将它传递给format
。然后,由于格式字符串中没有名为type
的占位符,它什么也不做。在我不知道你想用这个来做什么。如果你想让它对请求使用POST而不是GET…那么首先不应该在URL中放入查询字符串。如果你想让它做一些不同的事情,我猜不出会是什么。在
这里最简单的解决方法是,如果你不知道为什么要这么做,那就不要这样做:
现在这将返回404,因为在末尾粘贴}必须是从OAuth身份验证中获得的令牌,这在任何地方都没有做过。在
XXXXXX|XXXXX
显然行不通。它必须是access_token=XXXXXXXX
的形式,而{相关问题 更多 >
编程相关推荐