Holen Sie sich Tweepy Suchergebnisse als JSON

Ich würde gerne die Suchergebnisse von Twitter mit Tweepy als JSON.
Ich sah hier, dass ich sollte hinzufügen, eine Klasse zu Tweepy-code, damit dieses feature funktioniert.

Aber wenn ich mir anschaue, Tweepy-code, das ist, was ich bekomme :

class JSONParser(Parser):

    payload_format = 'json'

    def __init__(self):
        self.json_lib = import_simplejson()

    def parse(self, method, payload):
        try:
            json = self.json_lib.loads(payload)
        except Exception, e:
            raise TweepError('Failed to parse JSON payload: %s' % e)

        needsCursors = method.parameters.has_key('cursor')
        if needsCursors and isinstance(json, dict) and 'previous_cursor' in json and 'next_cursor' in json:
            cursors = json['previous_cursor'], json['next_cursor']
            return json, cursors
        else:
            return json

    def parse_error(self, payload):
        error = self.json_lib.loads(payload)
        if error.has_key('error'):
            return error['error']
        else:
            return error['errors']

So, ich bin nicht verpflichtet, diese hack seinen Codes, da die Funktion schon vorhanden ist.

Dies ist, wie mein code aussieht:

from tweepy.parsers import JSONParser
for tweet in tweepy.Cursor(api.search,
                       q=hashtag,
                       include_entities=True,
                       rpp=100,
                       parser=tweepy.parsers.JSONParser()
                       ).items(limit):

Dies ist die Fehlermeldung die ich bekomme :

   print (json.dumps(tweet))
  File "/usr/lib/python2.7/json/__init__.py", line 243, in dumps
    return _default_encoder.encode(obj)
  File "/usr/lib/python2.7/json/encoder.py", line 207, in encode
    chunks = self.iterencode(o, _one_shot=True)
  File "/usr/lib/python2.7/json/encoder.py", line 270, in iterencode
    return _iterencode(o, 0)
  File "/usr/lib/python2.7/json/encoder.py", line 184, in default
    raise TypeError(repr(o) + " is not JSON serializable")
TypeError: <tweepy.models.Status object at 0xb6df2fcc> is not JSON serializable

Was soll ich undrestand von diesem Fehler ? Wie kann ich es beheben ?

  • Eine bessere (und einfachere) Vorgehensweise finden Sie in diesem Antwort, um eine ähnliche Frage
InformationsquelleAutor 4m1nh4j1 | 2014-06-02
Schreibe einen Kommentar