我目前正在做一个项目,在这个项目中,我需要收集两个给定日期之间的tweet,我为此奋斗了一段时间
我有一个简单的twitter开发者帐户,所以首先你认为有这样一个帐户是可能的吗
我在Tweepy的文档中看到,我们可以在最后7天收集一定数量的推文。但即使我在最后7天尝试了两次约会,我也没有得到正确的回报
以下是我的功能:
def scrapping_de_tweets(mots_cles, date_debut, date_fin, nombre_de_tweets):
bd_tweets = pd.DataFrame(columns = ['date_tweet', 'lieu', 'texte'])
heure_debut = time.time()
tweets = tweepy.Cursor(api.search, q=mots_cles, since=date_debut, until=date_fin, lang="fr", tweet_mode='extended').items(nombre_de_tweets)
liste_de_tweets = [tweet for tweet in tweets]
nbTweets = 0
for tweet in liste_de_tweets :
date_tweet = tweet.user.created_at
lieu = tweet.user.location
try:
text = tweet.retweeted_status.full_text
except AttributeError: # Pas un Retweet
text = tweet.full_text
ith_tweet = [date_tweet, lieu, text]
# Rajout à la base de données
bd_tweets.loc[len(bd_tweets)] = ith_tweet
nbTweets += 1
heure_fin = time.time()
duree = round((heure_fin- heure_debut)/60, 2)
print('Le nombre de tweets scrappés est {}'.format(nbTweets))
print('Le temps nécessaire a été {} mins'.format( duree ))
from datetime import datetime
# Obtenir l'horodatage dans un format lisible
to_csv_horodatage = datetime.today().strftime('%Y%m%d_%H%M%S')
# Chemin du repertoire courant
chemin_courant = os.getcwd()
nom_fichier = chemin_courant + '\\donnees\\' + date_fin + '_' + to_csv_horodatage + 'tweets_pollution.csv'
# Stockage de la DataFrame dans un fichier csv
bd_tweets.to_csv(nom_fichier, index = False)
print('Scraping terminé!')
print(bd_tweets.describe())
# Initialisation des paramètre d'entrées:
mots_cles = "#france"
date_debut = "2020-12-31"
date_fin = "2021-01-04"
nombre_de_tweets = 500
# Appel de la fonction
scrapping_de_tweets(mots_cles,date_debut, date_fin, nombre_de_tweets)
这是我得到的
Le nombre de tweets scrappés est 500
Le temps nécessaire a été 0.53 mins
Scraping terminé!
date_tweet ... texte
count 500 ... 500
unique 436 ... 196
top 2009-06-20 16:46:46 ... 🇫🇷 FLASH - 12 489 cas de #COVID19 ont été déte...
freq 6 ... 82
first 2007-06-25 20:38:51 ... NaN
last 2021-01-03 21:45:34 ... NaN
如你所见,我不仅收到2021年的推文,还收到2007年或2009年的一些非常老的推文。这怎么可能呢
请帮助我了解我的代码有什么问题,或者tweepy是如何工作的
提前谢谢
目前没有回答
相关问题 更多 >
编程相关推荐