analitics

Pages

Monday, May 20, 2019

Python 3.7.3 : Use the tweepy to deal with twitter api - part 002.

The tutorial for today is about with python 3.7.3
The development team comes with this intro:
An easy-to-use Python library for accessing the Twitter API.
You need to have an application on twitter with tokens and key, see here.
The first step is to install this python module:
C:\Python373\Scripts>pip install tweepy
...
Successfully built PySocks
Installing collected packages: PySocks, tweepy
Successfully installed PySocks-1.6.8 tweepy-3.7.0
This is the source code I used.
Is very simple to understand:
import tweepy

# set the keys strings
consumer_key = ''
consumer_secret = ''
access_token = ''
access_token_secret = ''

# get  the keys 
input("consumer_key :")
input("consumer_secret :")
input("access_token :")
input("access_token_secret :")
print("--------")

# authentification and get data 
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)
user = api.me()
print (user.name)
user = api.me()
print(user.name)
print(user.location)
search = input("search :")
numberOfTweets = int(input("number of tweets :"))
phrase = input("response phrase :")
for follower in tweepy.Cursor(api.followers).items():
    try:
        follower.follow()
    except tweepy.error.TweepError:
        pass

print("Followed everyone that is following " + user.name)
for tweet in tweepy.Cursor(api.search, search).items(numberOfTweets):
    try:
    #Reply
        print('\nTweet by: @' + tweet.user.screen_name)
        print('ID: @' + str(tweet.user.id))
        tweetId = tweet.user.id
        username = tweet.user.screen_name
        api.update_status("@" + username + " " + phrase, in_reply_to_status_id = tweetId)
        print ("Replied with " + phrase)
    except tweepy.TweepError as e:
        print(e.reason)
    except StopIteration:
        break

for tweet in tweepy.Cursor(api.search, search).items(numberOfTweets):
    try:
        #Reply
        tweet.favorite()
        print('Favorited the tweet') 
        #Retweet
        tweet.retweet()
        print('Retweeted the tweet')   
        #Follow
        tweet.user.follow()
        print('Followed the user')        
    except tweepy.TweepError as e:
        print(e.reason)
    except StopIteration:
        break
The result is this:
C:\Python373>python.exe tweepy_001.py
catafest
catafest
Romania, Suceava, Falticeni
search :Catalin
number of tweets :1
response phrase :Festila
Followed everyone that is following catafest

Tweet by: @rumeys1a
ID: @1103384469703196673
Replied with Festila
Favorited the tweet
Retweeted the tweet
Followed the user
You can see what are the technical follow limits for twitter here.
The tweepy Documentation can be read at this link.