Проблема с выходом Tweepy - PullRequest
       3

Проблема с выходом Tweepy

0 голосов
/ 25 марта 2020

Я пытаюсь работать с выводом Tweepy с временной шкалы пользователя Twitter. Я попытался обработать вывод как JSON, но безрезультатно. Ниже показано, как я получил данные, а также некоторые попытки работы с данными и последующие ошибки, которые я получил.

Как я получил данные:

user_timeline = api.user_timeline(screen_name='TechCrunch', count=5)

Частичный вывод:

[Status(_api=, _json={'created_at': 'Tue Mar 24 18:02:08 +0000 2020', 'id': 1242512035159687169, 'id_str': '1242512035159687169', 'text': 'RT @Yair_Rosenberg: Please listen to...'''

Код попытки:

Timeline_result = json.loads(user_timeline)

Сообщение об ошибке:

TypeError: the JSON object must be str, bytes or bytearray, not ResultSet

Код попытки:

Timeline_result = json.dumps(user_timeline)

Сообщение об ошибке:

TypeError: Object of type Status is not JSON serializable

Единственный способ извлечь из этого набора данных что-либо читаемое было при использовании следующего:

user_timeline[0].text

Частичный вывод:

'RT @Yair_Rosenberg: Please listen to Dr...'

В конечном счете, я хотел бы иметь возможность извлекать всю необходимую информацию по отдельности, например, «id», «id_str», «text» и т. Д. c ...

Спасибо всем за помощь. Я бился головой об стену об этом некоторое время ...

1 Ответ

1 голос
/ 25 марта 2020

Tweepy's user_timeline возвращает список объектов типа Status.

Чтобы получить доступ к отдельным id, id_str, text, мы можем выполнить итерацию по user_timeline объект типа:

user_timeline = api.user_timeline(screen_name='TechCrunch', count=5) 
for tweet in user_timeline:
    tweet._json['id_str']

Поскольку каждый статус имеет твит json, вы можете найти его атрибуты здесь . Кроме того, здесь - это фактическая реализация.

Надеюсь, это поможет!

...