【发布时间】:2017-06-18 10:37:27
【问题描述】:
****我正在尝试从特定用户的 twitter 时间线获取信息,并且我正在尝试以 Json 格式打印输出,但是我得到一个 AttributeError: 'str' object has no attribute '_json'。我是 python 新手,所以我在尝试解决这个问题时遇到了麻烦,所以任何帮助都将不胜感激。 ****
下面显示了我目前拥有的代码:
from __future__ import absolute_import, print_function
import tweepy
import twitter
def oauth_login():
# credentials for OAuth
CONSUMER_KEY = 'woIIbsmhE0LJhGjn7GyeSkeDiU'
CONSUMER_SECRET = 'H2xSc6E3sGqiHhbNJjZCig5KFYj0UaLy22M6WjhM5gwth7HsWmi'
OAUTH_TOKEN = '306848945-Kmh3xZDbfhMc7wMHgnBmuRLtmMzs6RN7d62o3x6i8'
OAUTH_TOKEN_SECRET = 'qpaqkvXQtfrqPkJKnBf09b48TkuTufLwTV02vyTW1kFGunu'
# Creating the authentication
auth = twitter.oauth.OAuth( OAUTH_TOKEN,
OAUTH_TOKEN_SECRET,
CONSUMER_KEY,
CONSUMER_SECRET )
# Twitter instance
twitter_api = twitter.Twitter(auth=auth)
return twitter_api
# LogIn
twitter_api = oauth_login()
# Get statuses
statuses = twitter_api.statuses.user_timeline(screen_name='@ladygaga')
# Print text
for status in statuses:
print (status['text']._json)
【问题讨论】:
-
“试图以 Json 格式打印输出”。您是否有特定的原因要这样做?通常,Json 用于存储,而不是输出。
-
你弄错了 -
status['text']._json应该是status._json['text'] -
好吧,基本上我的导师希望将输出放在一个列表中,这就是为什么我在尝试打印输出时尝试添加“._json”但它给出了错误@patrick
-
你也不应该泄露你的凭据 - 进入 twitter 应用程序仪表板并尽快重置它们,你已经通过公开泄露它们来破坏它们。
-
您可以为它们创建environment variables(Linux、Windows),然后使用 Python 的
os.environ读取它们,而不是将您的凭据放入代码中。
标签: python json twitter-oauth tweepy twitter-streaming-api