for tweet in tweepy.Cursor(api.search,q="football",lang="en").items(50):
我正在尝试从用户的用户名中获取带有特定文本的推文。然后还找到一条包含特定文本的推文。我尝试了多次,但似乎没有用。
谢谢你的帮助
凭证存储在一个文件中,但您可以将代码更改为您喜欢的任何方式。这会遍历用户名并仅打印推文计数,但您可以再次根据需要进行修改以根据需要处理推文
from tweepy import API
from tweepy import Cursor
from tweepy.streaming import StreamListener
from tweepy import OAuthHandler
from tweepy import Stream
from pprint import pprint
import twitter_credentials
import json
import numpy as np
import pandas as pd
# # # # TWITTER CLIENT # # # #
class TwitterClient():
def __init__(self, twitter_user=None):
self.auth = TwitterAuthenticator().authenticate_twitter_app()
self.twitter_client = API(self.auth)
self.twitter_user = twitter_user
#-------------------------------get tweets------------------------------------------
def get_user_timeline_tweets(self, num_tweets=20, repbool=False, rtsbool=True):
tweets = []
# name of tweepy api reference is 'user_timeline'
for tweet in Cursor(self.twitter_client.user_timeline, id=self.twitter_user, tweet_mode='extended', include_entities=True, exclude_replies=repbool, include_rts=rtsbool).items(num_tweets):
tweets.append(tweet)
# print(tweet._json)
return tweets
#-------------------------------get tweets------------------------------------------
# # # # TWITTER AUTHENTICATER # # # #
class TwitterAuthenticator():
def authenticate_twitter_app(self):
auth = OAuthHandler(twitter_credentials.CONSUMER_KEY, twitter_credentials.CONSUMER_SECRET)
auth.set_access_token(twitter_credentials.ACCESS_TOKEN, twitter_credentials.ACCESS_TOKEN_SECRET)
return auth
num_tweets = 200
user_list = ['TwitterSupport', 'TwitterMovies']
for user_handle in user_list:
# print(user_handle)
twitter_client = TwitterClient(user_handle)
tweets = twitter_client.get_user_timeline_tweets(num_tweets)
print(len(tweets))