如何从 tweepy 获取完整的推文?
How to get full tweets from tweepy?
我正在使用 Tweepy 从 Twitter 提取基于主题标签的推文。问题是提取的推文不是全长的。
这是我的代码
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')])
当我不使用 tweet_mode='extended'
时,它不会给出完整的推文。并使用 tweet_mode='extended'
,它给出了以下错误
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'
有人可以帮忙解决这个问题吗?
如果使用extended
,则需要通过print(status.full_text)
获取文本
这样做:
try:
print(status.retweeted_status.full_text)
except AttributeError: # Not a Retweet
print(status.full_text)
我正在使用 Tweepy 从 Twitter 提取基于主题标签的推文。问题是提取的推文不是全长的。
这是我的代码
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')])
当我不使用 tweet_mode='extended'
时,它不会给出完整的推文。并使用 tweet_mode='extended'
,它给出了以下错误
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'
有人可以帮忙解决这个问题吗?
如果使用extended
,则需要通过print(status.full_text)
这样做:
try:
print(status.retweeted_status.full_text)
except AttributeError: # Not a Retweet
print(status.full_text)