Reputation: 1117
I am extracting tweets based on hashtags from Twitter using Tweepy. The problem is the extracted tweets do not come in full length.
Here is my code
import tweepy
import csv
import pandas as pd
####input your credentials here
consumer_key = 'XXXXXX'
consumer_secret = 'XXXXXX'
access_token = 'XXXXXX-XXXXXX'
access_token_secret = 'XXXXXX'
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth,wait_on_rate_limit=True)
# Open/Create a file to append data
csvFile = open('new-dataset12.csv', 'a')
#Use csv Writer
csvWriter = csv.writer(csvFile)
for tweet in tweepy.Cursor(api.search,q="#PregnantElephant", tweet_mode='extended', count=10000, lang="en", since="2020-04-03").items():
print (tweet.created_at, tweet.text)
csvWriter.writerow([tweet.created_at, tweet.text.encode('utf-8')])
When I don't use tweet_mode='extended'
, it does not give full tweets. And using tweet_mode='extended'
, it gives the following error
AttributeError Traceback (most recent call last)
<ipython-input-7-50f1dd34d7fa> in <module>()
24 csvWriter = csv.writer(csvFile)
25 for tweet in tweepy.Cursor(api.search,q="#PregnantElephant", tweet_mode='extended', count=10000, lang="en", since="2020-04-03").items():
---> 26 print (tweet.created_at, tweet.text)
27 csvWriter.writerow([tweet.created_at, tweet.text.encode('utf-8')])
AttributeError: 'Status' object has no attribute 'text'
Can someone please help to figure this problem out?
Upvotes: 1
Views: 961
Reputation: 1084
If you use extended
, you need to get the text by print(status.full_text)
do that :
try:
print(status.retweeted_status.full_text)
except AttributeError: # Not a Retweet
print(status.full_text)
Upvotes: 2