twitter-bot-bootstrap
                                
                                 twitter-bot-bootstrap copied to clipboard
                                
                                    twitter-bot-bootstrap copied to clipboard
                            
                            
                            
                        Template for creating a twitter bot using python (twython) and heroku
This is a template for creating your own twitter bot using python and heroku. The only programming necessary is to update the function get_message() in app.py to create your bot's tweets.
Also, if you'd like to randomly favorite other users' tweets by keyword search, uncoment the call to random_favoriting() in main(), and change the keywords to those you'd like to search for.
Confused? Try reading this. Or contact me @jehosafet.
Requirements
- python
- Install Twython (pip install Twython): for generating/posting tweets in python app
 
- Install Twython (
- heroku
Instructions
- 
Fork and pull this repo. 
- 
In your local repo, create a new heroku app. - heroku create --stack cedar
- heroku apps:rename YOUR_APP_NAME
- Your heroku app will now keep the python script app.pyrunning as often as possible.
 
- 
Create a new twitter account. - Use your current email to create the account by adding a tag.
- Confirm the email address associated with this new twitter account.
 
- 
From your main twitter account (not the one you just created, unless this is your first twitter account!) create a new twitter app. - Under Settings / Application Type:
- Enable "Read and Write"
- Check "Allow this application to be used to Sign in with Twitter"
 
- Under Details:
- Click "Create My Access Token"
 
- Connect this app to your bot's twitter acount (help here)
- $ gem install twurl
- $ twurl authorize --consumer-key "REPLACE_THIS" --consumer-secret "REPLACE_THIS"
 
- When twurlasks you to go to a url to log-in, now use the bot account you just created.
 
- Under Settings / Application Type:
- 
Create an .envfile containing your twitter keys.- twurlgenerated some keys for your new bot account. You can find these in- ~/.twurlrc.
- In your local repo, create a file called .envthat contains these twitter app keys, one per line:- TWITTER_CONSUMER_KEY=replace_this
- TWITTER_CONSUMER_SECRET=replace_this
- TWITTER_OAUTH_TOKEN=replace_this
- TWITTER_OAUTH_TOKEN_SECRET=replace_this
 
- For heroku, use heroku-configto copy contents of.envto your heroku app.- Install heroku-config: heroku plugins:install heroku-config.
- Now run heroku config:push.- NOTE: To update heroku environment variables later, run heroku config:push --overwrite
- Alternatively, add heroku environment variables manually using heroku config:set YOUR_ENV_VAR=replace_this
 
- NOTE: To update heroku environment variables later, run 
 
- Install heroku-config: 
 
Okay, now here's the fun part:
- 
Update the function get_message()inapp.pyto create your bot's tweets.- Read about twitter bot etiquette for bot guidelines.
- Use the wordnik api for getting random parts of speech.
 
- 
Test your bot locally. - Running foreman startshould generate your tweets once every minute, or at whatever rate you set inapp.py.
 
- Running 
- 
Commit and push local changes to heroku and github. - git push heroku masterpushes all commits to heroku and starts up your app.
- Your bot should now tweet as long as your heroku app is running (via the worker dyno).