🤖 Automated follow/unfollow bot for GitHub. Uses GitHub API. Written in python.

Overview

GitHub Follow Bot

Table of Contents

Disclaimer

This is a PoC and was developed for educational purposes only. You may get your account banned. Use at your own risk.

Spam and Inauthentic Activity on GitHub

Automated excessive bulk activity and coordinated inauthentic activity, such as spamming, are prohibited on GitHub. Prohibited activities include:

  • (...)
  • inauthentic interactions, such as fake accounts and automated inauthentic activity
  • rank abuse, such as automated starring or following

From GitHub Acceptable Use Policies

How to Use

Install requirements

pip install -r requirements.txt

Authenticate

Get a GitHub Personal Access Token

Make sure to enable the user scope and all subscopes inside of that permission.

How to get your GitHub PAT

Add your GitHub username and PAT to .env file

Create a .env file on the project's root directory or edit .env.sample (rename to .env) and add your username and PAT.

USER=YOUR_GITHUB_USERNAME
TOKEN=YOUR_GITHUB_PERSONAL_ACCESS_TOKEN

Follow

  • Target user's followers
     python bot_follow.py -t 
         
    
         
  • Most popular users' followers from a country (list of valid countries)
     python bot_follow.py -p 
         
    
         
  • File (usernames separated by comma)
     python bot_follow.py -f 
         
    
         

Unfollow

note: Unfollow order is FIFO, as in the most recently followed user will be the last to be unfollowed.

  • All
     python bot_unfollow.py -a
    
  • Follow back
     python bot_unfollow.py -fb
    
  • File (usernames separated by comma)
     python bot_unfollow.py -f 
         
    
         

Options

Maximum number of follow/unfollow actions

-m 300

Speed

A random delay (in seconds) is performed after follow/unfollow actions or when the account is rate limited. You can change these delays to your liking with the following arguments:

  • Minimum delay between actions
     -smin 20
    
  • Maximum delay between actions
     -smax 120
    
  • Minimum delay when rate limited
     -smin 600
    
  • Maximum delay when rate limited
     -smin 1500
    

Future implementation

  • Schedule - Bot only performs actions between set time and sleeps after off-schedule
  • Add follow source - Grab followers from users listed in a file
  • Email followed users - Send an email to followed users with templates (colaboration, follow back or custom)
  • Star n repositories of followed users

Contributing

Contributions are welcome! Follow the contribution guidelines.

Wish there was another feature? Feel free to open an feature request issue with your suggestion!

If you find a bug, kindly open an bug report issue as described in the contribution guidelines.

Resources

Owner
João Correia
Full stack dev 🗿 Going down the modern front-end tech rabbit hole and looking to contribute to fun projects.
João Correia
Python script for download course from platzi.com

Platzi Downloader Tool Esta es una pequeña herramienta que hace mucho y que te ahorra una gran cantidad de trabajo a la hora de descargar cursos de Pl

Devil64-Dev 21 Sep 22, 2022
A Python Program to determine Degree of Profanity of Tweets

tweetx tweetx is a program to detect racial slurs in Twitter Tweets. Racial Abuse on Twitter is becoming quite a serious issue in recent times. tweetx

Kartik Poojari 3 Nov 11, 2021
Automatically render tens of thousands of unique NFT images individually as png's.

Blend_My_NFTs Description This project is a work in progress (as of Oct 24th, 2021) and will eventually be an add on to Blender. Blend_My_NFTs is bing

Torrin Leonard 894 Dec 29, 2022
🕵️‍♂️ Investigate Google Accounts with emails.

Description GHunt is an OSINT tool to extract information from any Google Account using an email. It can currently extract: Owner's name Last time the

mxrch 13.1k Jan 01, 2023
A discord bot that send SMS spam!

bruh-bot send spam sms! send spam with email! it sends you spam via sms and Email using two tools, quack and impulse! if you have some problem contact

pai 32 Dec 25, 2022
“ HOLA HUMANS 👋 I'M DAISYX 2.0 „ LATEST VERSION OF DAISYX.. Source Code of @Daisyxbot

DaisyX 2.0 A Powerful, Smart And Simple Group Manager ... Written with AioGram , Pyrogram and Telethon... The first AioGram based modified groupmanage

TeamDaisyX 153 Dec 06, 2022
The Bot provide Hadith API and fetch content via api.hadith.sutanlab.id

Bot Hadith-API on Telegram The Bot provide Hadith API and fetch content via api.hadith.sutanlab.id Built With Python Asynchronous HTTP protocol client

xMan 12 Feb 19, 2022
My beancount practice as a template

my-beancount-template 个人 Beancount 方案的模板仓库 相关博客 复式记账指北(一):What and Why? 复式记账指北(二):做账方法论 复式记账指北(三):如何打造不半途而废的记账方案 配置 详细配置请参考博客三。必须修改的配置有: Bot功能:data/be

KAAAsS 29 Nov 29, 2022
A CLI tool to transfer, sync, and backup playlists on music streaming services

unitunes A command-line interface tool to manage playlists across music streaming services. Introduction unitunes manages playlists across streaming s

Victor Tao 50 Jan 07, 2023
Sniper for Anigame and Izzi discord bots!

Anigame Sniper Gen-3 Features Inbuilt Spammer Responds to your messages in discord (on/off) Snipes only where you want it to Set latency so that the b

22 Nov 13, 2022
HelpDESK Dynamics

Helpdesk Application The project is a Helpdesk application (Helpdesk dynamics) where staff of an organization can raise and assign job/trouble tickets

Okeoma Ihunwo 0 Nov 14, 2021
A Powerful Telethon Based Telegram Spam Bot.

Yukki Multi Spam Bot 🚀 Deploy on Heroku You can Use these API ID and API HASH while deploying String Session No Requirement of API ID and API HASH Ge

46 Dec 23, 2022
A feishu bot daily push arxiv latest articles.

arxiv-feishu-bot We develop A simple feishu bot script daily pushes arxiv latest articles. His effect is as follows: Of course, you can also use other

huchi 6 Apr 06, 2022
GET-ACQ is a python tool used to gather all companies acquired by a given company domain name.

get-acq 🏢 GET-ACQ is a python tool used to gather all companies acquired by a given company domain name. It is done by calling SecurityTrails API. Us

Milan 7 Dec 19, 2022
Discord Webhook Proxy for Roblox payloads.

RoProxy A Discord webhook proxy passthrough for roblox. Setup Your port and endpoint are in the config.json, make sure both app.py and config.json are

PythonSerious 2 Nov 05, 2021
A Discord Rich Presence App to set your own custom rich presence.

discord-rich-presence A Discord Rich Presence App to set your own custom rich presence. #BUILDS Ready to use package are available inside "finalpackag

1 Nov 22, 2021
DadBot 2.0 is an interactive bot that reflects the personality of a typical dad

DadBot 2.0 is an interactive bot that reflects the personality of a typical dad! You can start by running main while all directories are maintained as they are on this GitHub.

1 Dec 04, 2021
RChecker - Checker for minecraft servers

🔎 RChecker v1.0 Checker for Minecraft Servers 💻 Supported operating systems: ✅

Pedro Vega 1 Aug 30, 2022
Integrating the Daraja-Api with Python language

Mpesa-Daraja-Api Integrating the Daraja-Api with Python language. Credentials.py file This file contains the consumer key and the consumer secrete key

Morvin Ian 3 Nov 09, 2022
ServiceX DID Finder Girder

ServiceX_DID_Finder_Girder Access datasets for ServiceX from yt Hub Finding datasets This DID finder is designed to take a collection id (https://gird

1 Dec 07, 2021