मैं पायथन के साथ ट्वीपी 3.6.0 का उपयोग शुरू कर रहा हूं और मेरे कुछ प्रश्न हैं।

सबसे पहले, मैं ट्वीट्स की एक सूची प्राप्त करना चाहता हूं (एपीआई खोज विधि के साथ), लेकिन रीट्वीट नहीं। मुझे कुछ अजीब लगता है। उसकी आईडी और लेखक_नाम के साथ एक ट्वीट तक पहुंचने का प्रयास करें। स्वचालित रूप से, यह मूल ट्वीट (अलग आईडी और लेखक_नाम) पर रीडायरेक्ट हो जाता है।

कुछ खोज के बाद मैंने पाया कि लोग "retweeted_status" कुंजी के बारे में बात कर रहे हैं। यदि कुंजी बाहर निकलती है, तो यह RT है। लेकिन नीचे मेरे उदाहरण में, मेरे ट्वीट ऑब्जेक्ट में कोई रीट्वीट_स्टेटस नहीं है लेकिन मूल ट्वीट पर पुनर्निर्देशन यहां है।

क्या मैंने कुछ गलत समझा?

धन्यवाद

6
Nathan Cheval 27 अप्रैल 2018, 00:49

1 उत्तर

सबसे बढ़िया उत्तर

आप केवल रीट्वीट खोजना चुन सकते हैं या अपनी खोज क्वेरी से सभी रीट्वीट को बाहर कर सकते हैं।

बिना किसी रीट्वीट की खोज के लिए "-फिल्टर: रीट्वीट"

for tweet in tweepy.Cursor(api.search, q='github -filter:retweets',tweet_mode='extended').items(5):

केवल रीट्वीट खोजने के लिए "फ़िल्टर: रीट्वीट"

 for tweet in tweepy.Cursor(api.search, q='github filter:retweets',tweet_mode='extended').items(5):

अतिरिक्त जानकारी:

जबकि आप सीधे खोज क्वेरी में रीट्वीट को बाहर कर सकते हैं, यह पता लगाना भी बहुत आसान है कि क्या कोई ट्वीट एक रीट्वीट है क्योंकि सभी रीट्वीट "rt @UsernameOfAuthor" से शुरू होते हैं। आप यह पता लगा सकते हैं कि ट्वीट आरटी से शुरू होता है या नहीं, यह देखने के लिए एक बुनियादी अगर बयान करके एक ट्वीट एक रीट्वीट है।

पहले एक बेसिक क्वेरी बनाएं और जानकारी को वेरिएबल में सेव करें।

for tweet in tweepy.Cursor(api.search, q='github',tweet_mode='extended').items(5):
    # Defining Tweets Creators Name
    tweettext = str( tweet.full_text.lower().encode('ascii',errors='ignore')) #encoding to get rid of characters that may not be able to be displayed
    # Defining Tweets Id
    tweetid = tweet.id

फिर प्रदर्शन उद्देश्यों के लिए जानकारी प्रिंट करें

    # printing the text of the tweet
    print('tweet text: '+str(tweettext))
    # printing the id of the tweet
    print('tweet id: '+str(tweetid))

फिर अगर यह एक रीट्वीट है या नहीं, तो यह पता लगाने के लिए if स्टेटमेंट है

# checking if the tweet is a retweet (this method is basic but it will work)
if tweettext.startswith("rt @") == True:
    print('This tweet is a retweet')
else:
    print('This tweet is not retweet')
11
TravisPooley 2 मई 2018, 04:43