Tako is a Twitter bot that selectively retweets/favorites based on Twitter content that the bot finds useful. You can curate Tako's behavior and constraints from a comfortable user-interface that runs right in your browser.
For some reason,
py-notifier
was added to the requirements as "pynotifier", which is not a vaild distribution, to fix this usepip install py-notifier
Tweepy should be version
tweepy==3.10.0
Query Bot is a conventional Twitter Retweet/Like bot that uses hashtags to search for related Tweets then interacts with them. This is a proven method to build a steady following.
Stream Bot will follow specific users and interact with their Tweets upon being posted. This is good for interacting with an influencer or your favorite people on Twitter.
Tweet Scheduler will post your Tweets at a scheduled time in the future. As long as Tako is running, the Tweet will be posted otherwise it will be posted next time Tako is started.
Tako features some basic analytics which give some insight into Tako's effectiveness and performance.
Apply for and receive Twitter API credentials.
Clone Tako to a comfortable location on your intended runtime device.
Rename
EXAMPLE_config.json
toconfig.json
.
Update your config (
config.json
) with your valid Twitter API credentials. (Read & write permissions)
Move to
/src
and pip installrequirements.txt
.
Run
main.py
.
To start either of the bot features (query/stream) navigate to
Control
then hitStart
.
Confirm that Tako is running from the
Status
section, it should read"Running"
.
Hashtags: The hashtags you add here will determine the Tweets your bot will interact with.
Drop If Hashtag Includes: Tako will ignore any Tweet that includes any of these substrings in any of it's hashtags. (Keeps us from interacting with junk like #100daysofcode etc.). Should ALWAYS be lowercase as each hashtag will be searched in lowercase.
Drop If Tweet Includes: Tako will ignore any Tweet that includes any of these substrings within it's text. This keeps us from interacting with junk tweets. Substrings should ALWAYS be lowercase as each tweet will be searched in lowercase. Issue: Twitter API only includes some of the text of a tweet in API requests, larger tweets may be truncated so this feature is not completely reliable.
Max Dataset Length: This is the maximum amount of data points to keep in our dataset files. This is where our analytics come from and are stored. If you arent concerned about performance/storage issues (ie: aren't on a slow device) then you can use a higher cap.
Sleep Time: Amount of time (seconds) to sleep between queries.
Required Retweets: Amount of retweets a Tweet must have in order for us to interact with it.
Required Likes: Amount of likes a Tweet must have in order for us to interact with it.
Tweets Per Query: Amount of Tweets to pull during each query, requests can add up quickly so be sure not to set this too high else you could be rate-limited.
Max Hashtags: Max amount of hashtags contained in a single Tweet before we deem it spam and ignore it.
Also featuring analytics of your actions such as likes, requests and retweets.
Tako is built around Tweepy and is presented with a clean, browser-based & user-friendly UI.
Tako uses a local websocket server/client to pass data to and from the backend.
Darkmode is disabled until I can make the time to fix it.
Added Discord webhook support for stream listener. Forward new tweets real-time to a Discord channel.
Resolved all known errors.
Removed dependency of chrome-driver for app mode (kiosk mode), Tako now automatically opens in your default browser.
Removed config_location.txt,
config.json
is expected to be located in the root folder in any case.
Various UI changes.
Follow is now an interaction option, allowing Tako users to automatically follow the author of Tweets interacted with.
Updated font.
macros.Auth
is now used globally. This saves requests by authenticating at startup instead of each query. Stream, Scheduler & Query Bot now share the same Oauth instance.