Automatically pick a winner who Retweeted, Commented, and Followed your Twitter account!

Overview

CodeQL

๐ŸŽ AutomaticTwitterGiveaways ๐ŸŽ

AutomaticTwitterGiveaways automates selecting winners for "Retweet, Comment, Follow" type Twitter giveaways.

Contents

Quick Start

Choose from one of these two options:

1. Download a pre-built Executable

This method does not require installing any dependencies

  1. Download the Latest Release
  2. Extract the files.
  3. Modify twitter_giveaway_config.ini to suit your needs (See Configuration)
  4. Double-click on Run Twitter Giveaway.exe!

2. Run with Python

This method requires that Python be installed.

  1. Clone this repo
git clone https://github.com/elsell/AutomaticTwitterGiveaways
  1. Navigate to project root directory
cd AutomaticTwitterGiveaways
  1. Install Dependencies
python -m pip install -r requirements.txt
  1. Modify twitter_giveaway_config.ini to suit your needs (See Configuration)

  2. Run the script

python ./automatic_twitter_giveaways.py

Configuration

Important: A file named twitter_giveaway_config.ini must exist in the same directory as the script.

Below is an example configuration file. Please note that to run AutomaticTwitterGiveaways, you must have a Bearer Token that you can get by registering for a Twitter developer account (free).

;twitter_giveaway_config.ini

[TwitterAuthentication]
; Your Twitter Username
TwitterUsername=elonmusk
; Developer API Bearer Token
; Get one here:
; https://developer.twitter.com/en/portal/petition/essential/basic-info
BearerToken=

[GiveawayDetails]
; The URL of the tweet asking for retweets, comments, follows
GiveawayTweetURL=https://twitter.com/StubzNFT/status/1478720942981500939
; A hashtag required to make a comment valid
; (Omit the #. Ex. #NFT should be entered NFT)
GiveawayTweetHashtag=NFT

; Your timezone. Must be a valid TZ database name.
; A list of valid timezone strings can be found on Wikipedia:
; https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
GiveawayTimezone=America/Chicago

; Start date/time of the giveaway (usually the time of the first tweet)
; The start date/time must be NO MORE than 7 days prior. 
; This is a limitation of the Twitter API, unfortunately. 
GiveawayStartYear=2022
GiveawayStartMonth=1
GiveawayStartDay=5

; Specify the hour in 24hr time. 
; Ex. 1PM => 13
GiveawayStartHour=16
GiveawayStartMinute=0


; End date/time of the giveaway
GiveawayEndYear=2022
GiveawayEndMonth=1
GiveawayEndDay=10

; Specify the hour in 24hr time. 
; Ex. 1PM => 13
GiveawayEndHour=0
GiveawayEndMinute=00

[ListOutput]
; Output a CSV list of name,username for each user that both 
; retweeted GiveawayTweetURL and follows TwitterUsername
OutputRetweetsAndFollows=True
; The name of the file to which to write the above-mentioned data. 
OutputFileName=followsAndRetweets.csv

[DEBUG]
; Display debug information, such as API request URLs
Debug=False

Developer Notes

First and foremost, I acknowledge that this tool has a pretty narrow use-case. It was designed and built to solve a specific problem for a specific user.

However, I have done my best to design it such that others may find some use in it. If you have a use-case that is slightly different, and have Python experience, please fork this repo and modify as needed!

I will keep a list of all current (functionally-additive) forks and their use-cases in this repo.

Having issues?

Please create an issue! I don't provide any warranty with this software, but I will be happy to give your issue a look. It also helps others who may be looking to use this software determine if it is a good fit for them ๐Ÿ™‚

If you're a student

There is some messy code in here! Code duplication is through the roof at some points. There are better, more Pythontic ways to do what this does.

So if this bothers you AND you have time to do something about it, please use this repo as an opportunity to delve into the open-source world! Fork, make some changes, and submit a pull-request.

The project is relatively small and would be a great introduction to contributing to the FOSS world :)

You might also like...
Twitter-bot - A Simple Twitter bot with python

twitterbot To use this bot, You will require API Key and Access Key. Signup at h

Twitter-redesign - Twitter Redesign With Django

Twitter Redesign A project that tests Django and React knowledge through a twitt

A python script fetches all your starred repositories from your GitHub account and clones them to your server so you will never lose important resources
A python script fetches all your starred repositories from your GitHub account and clones them to your server so you will never lose important resources

A python script fetches all your starred repositories from your GitHub account and clones them to your server so you will never lose important resources

Follow pixiv account from twitter profile
Follow pixiv account from twitter profile

Follow pixiv account from twitter profile

AHA is an incident management & communication framework to provide real-time alert customers when there are active AWS event(s). For customers with AWS Organizations, customers can get aggregated active account level events of all the accounts in the Organization. Customers not using AWS Organizations still benefit alerting at the account level. A discord account nuker with lots of tools that will destroy a discord account
A discord account nuker with lots of tools that will destroy a discord account

A discord account nuker with lots of tools that will destroy a discord account (token destroyer... and much more).

Discord Account Generator that will create Account with hCaptcha bypass. Using socks4 proxies
Discord Account Generator that will create Account with hCaptcha bypass. Using socks4 proxies

Account-Generator [!] This was made for education. Please use socks4 proxies for nice experiences. [!] Please install these modules - "pip3 install ht

Deleting someone else's Instagram account, repeat until the target account is blocked.
Deleting someone else's Instagram account, repeat until the target account is blocked.

Program Features ๐Ÿ“Œ Instagram report V4. ๐Ÿ“Œ Coded with the latest version of Python. ๐Ÿ“Œ Has automatic scheduling. ๐Ÿ“Œ Full account report. ๐Ÿ“Œ Report a

Roblox-Account-Gen - A simple account generator not using paid solving services

Roblox Account Generator Star this if it helped to spread awareness! No 2captcha

Releases(v0.0.1)
PyDiscord, a maintained fork of discord.py, is a python wrapper for the Discord API.

discord.py A modern, easy to use, feature-rich, and async ready API wrapper for Discord written in Python. The Future of discord.py Please read the gi

Omkaar 1 Jan 16, 2022
Telegram bot to trim and download videos from youtube.

Inline-YouTube-Trim-Bot Telegram bot to trim and download youtube videos Deploy You can deploy this bot anywhere. Demo - YouTubeBot Required Variables

SUBIN 56 Dec 11, 2022
GitPython is a python library used to interact with Git repositories.

Gitoxide: A peek into the futureโ€ฆ I started working on GitPython in 2009, back in the days when Python was 'my thing' and I had great plans with it. O

3.8k Jan 03, 2023
WordPress models and views for Django.

django-wordpress Models and views for reading a WordPress database. Compatible with WordPress version 3.5+. django-wordpress is a project of ISL and t

Jeremy Carbaugh 332 Dec 24, 2022
Kanata Bot - a modular bot running on python3 with anime theme and have a lot features

Kanata Bot Kanata Bot is a modular bot running on python3 with anime theme and have a lot features. Easiest Way To Deploy On Heroku This Bot is Create

Rikka-Chan 2 Jan 16, 2022
Generate direct m3u playlist for all the channels subscribed in the Tata Sky portal

Tata Sky IPTV Script generator A script to generate the m3u playlist containing direct streamable file (.mpd or MPEG-DASH or DASH) based on the channe

Gaurav Thakkar 250 Jan 01, 2023
MemeBot - A discord bot that tracks how good people's memes are

MemeBot A discord Meme "Karma" Tracking bot Dependancies Make sure you have pymongo installed and a mongodb cluster setup with two collections. pip in

Uday Sharma 3 Aug 10, 2022
A simple python script to send files into your telegram Bot form your PC, Server etc.

telegramSend A simple python script to send files into your telegram Bot form your PC, Server etc. How to Use Install requirements.txt pip3 install -r

Ajay Kumar Tekam 1 Jul 19, 2022
QR login for pyrogram client

Generate Pyrogram session via QRlogin

ใƒใ‚ญ 18 Oct 21, 2022
Find people to play tennis with.

40Love 40Love is a full-stack web application that helps tennis players find hits at public tennis courts. Players can select public courts on the map

Tanner Schmutte 27 Jun 08, 2022
A fast and expressive Craigslist API wrapper

pycraigslist A fast and expressive Craigslist API wrapper. โš  As of September 2021, it is believed that Craigslist added a rate-limiter. It is advised

Ira Horecka 24 Dec 28, 2022
Unofficial calendar integration with Gradescope

Gradescope-Calendar This script scrapes your Gradescope account for courses and assignment details. Assignment details currently can be transferred to

6 May 06, 2022
Use Node JS Keywords In Python!!!

Use Node JS Keywords In Python!!!

Sancho Godinho 1 Oct 23, 2021
A simple Python TDLib wrapper

Telegram Forwarder App Description pywtdlib (Python Wrapper TDLib) is a simple synchronous Python wrapper that makes you easy to create new Python Tel

รlvaro Fernรกndez 2 Jan 04, 2023
fhempy is a FHEM binding to write modules in Python language

fhempy (BETA) fhempy allows the usage of Python 3 (NOT 2!) language to write FHEM modules. Python 3.7 or higher is required, therefore I recommend usi

Dominik 27 Dec 14, 2022
Rhythm bot clone for discord written in Python and uses YouTube to get media files.

Tunebot About Rhythm bot clone for discord written in Python and uses YouTube to get media files. Usage You need a .env file within the same directory

1 Oct 21, 2021
Simple debugger and tester for dico-command.

dp Simple debugger and tester for dico-command. Installation pip install -U dico-dp Usage bot = dico_command.Bot(...) ... bot.load_module("dp") Comma

3 Nov 19, 2022
Find rare users in discord servers

BadgeScraper Find rare users in discord servers How to use Replace the guild_id, server_id and token by the values you wanna use If you never used dis

20 Dec 09, 2022
Search twitter by address.

Twitter Geolocate Twitter Geolocation is a console app that generates twitter search querries for a certain geolocation and opens them in your standar

David J. Kowalk 28 Dec 06, 2022