Python Twitter 流媒体时间表
Python Twitter Streaming Timeline
****我正在尝试从特定用户的 Twitter 时间轴获取信息,并且正在尝试以 Json 格式打印输出,但是我收到了 AttributeError : 'str' 对象没有属性“_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)
您似乎混淆了 tweepy
和 twitter
,因此可能对方法有些混淆。根据您的代码,tweepy
的身份验证过程应如下所示:
import tweepy
def oauth_login():
# credentials for OAuth
consumer_key = 'YOUR_KEY'
consumer_secret = 'YOUR_KEY'
access_token = 'YOUR_KEY'
access_token_secret = 'YOUR_KEY'
# Creating the authentication
auth = tweepy.OAuthHandler(consumer_key,
consumer_secret)
# Twitter instance
auth.set_access_token(access_token, access_token_secret)
return tweepy.API(auth)
# LogIn
twitter_api = oauth_login()
# Get statuses
statuses = twitter_api.user_timeline(screen_name='@ladygaga')
# Print text
for status in statuses:
print (status._json['text'])
如果如前所述,您想要创建推文列表,您可以执行以下操作,而不是在 # Print text
之后执行所有操作
# Create a list
statuses_list = [status._json['text'] for status in statuses]
而且,正如评论中提到的,您不应该公开分发您的密钥。 Twitter 允许您重置它们,我建议您尽快 - 编辑您的 post 是不够的,因为人们仍然可以阅读您的编辑历史。
****我正在尝试从特定用户的 Twitter 时间轴获取信息,并且正在尝试以 Json 格式打印输出,但是我收到了 AttributeError : 'str' 对象没有属性“_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)
您似乎混淆了 tweepy
和 twitter
,因此可能对方法有些混淆。根据您的代码,tweepy
的身份验证过程应如下所示:
import tweepy
def oauth_login():
# credentials for OAuth
consumer_key = 'YOUR_KEY'
consumer_secret = 'YOUR_KEY'
access_token = 'YOUR_KEY'
access_token_secret = 'YOUR_KEY'
# Creating the authentication
auth = tweepy.OAuthHandler(consumer_key,
consumer_secret)
# Twitter instance
auth.set_access_token(access_token, access_token_secret)
return tweepy.API(auth)
# LogIn
twitter_api = oauth_login()
# Get statuses
statuses = twitter_api.user_timeline(screen_name='@ladygaga')
# Print text
for status in statuses:
print (status._json['text'])
如果如前所述,您想要创建推文列表,您可以执行以下操作,而不是在 # Print text
# Create a list
statuses_list = [status._json['text'] for status in statuses]
而且,正如评论中提到的,您不应该公开分发您的密钥。 Twitter 允许您重置它们,我建议您尽快 - 编辑您的 post 是不够的,因为人们仍然可以阅读您的编辑历史。