在我使用 jsonpickle(下面的代码 A)之前,我无法序列化 Twitter API 结果,但后来我无法解码 json 文件(下面的代码 B)。代码 A 创建了一个大型 json 对象。请帮忙。
代码 A
#!/usr/bin/env python
import tweepy
import simplejson as json
import jsonpickle
consumer_key = "consumer key here"
consumer_secret = "consumer secret here"
access_token = "access token here"
access_token_secret = "access token secret here"
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth, parser=tweepy.parsers.ModelParser())
jsonFile = open('/location_here/results.json', 'wb')
for status in tweepy.Cursor(api.search, q="keyword").items():
print status.created_at, status.text
frozen = jsonpickle.encode(status)
s = json.loads(frozen)
json.dump(s, jsonFile)
代码 B
import jsonpickle
import simplejson as json
in_file = open("/location_here/results.json")
out_file = open("/location_here/data.json", 'wb')
jsonstr = in_file.read()
thawed = jsonpickle.decode(jsonstr)
data = json.loads(thawed)
这给出了一个错误,ValueError: Trailing data。
谢谢。