🤖 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
Darkflame Universe Account Manager

Darkflame Universe Account Manager This is a quick and simple web application intended for account creation and management for a DLU instance created

31 Nov 29, 2022
Crosschat - A bot for cross-server communication

CrossChat A bot for cross-server communication. Running the bot To run the bot y

8 May 15, 2022
A small repository with convenience functions for working with the Notion API.

Welcome! Within this respository are a few convenience functions to assist with the pulling and pushing of data from the Notion API.

10 Jul 09, 2022
Simple Telegram AI Chat bot made using OpenAI and Luna API

Yui Yui, is a simple telegram chat bot made using OpenAI and Luna Chat bot Deployment 👀 Deploying is easy 🤫 ! You can deploy this bot in Heroku or i

I'm Not A Bot #Left_TG 21 Dec 29, 2022
A (probably) working Kik name checker

KikNameChecker !THIS ONLY CHECKS WS2.KIK.COM ENDPOINT! \ Will add user inputted endpoints thing \ A (probably) working Kik name checker Started as a s

insert edgy and cool name 1 Dec 17, 2022
Linkvertise-Bypass - Bypass Linkvertise advertisement

Linkvertise-Bypass Bypass Linkvertise advertisement 📕 instructions Copy And Pas

Flex Tools 4 Jun 10, 2022
Declarative assertions for AWS

AWSsert AWSsert is a Python library providing declarative assertions about AWS resources to your tests. Installation Use the package manager pip to in

19 Jan 04, 2022
Discord bot to display private leaderboards for Advent of Code.

Advent Of Code Discord Bot Discord bot for displaying Advent of Code private leardboards, as well as custom leaderboards where participants can set th

The Future Gadgets Lab 6 Nov 29, 2022
For specific function. For my own convenience. Remind owner to share data to another DITO user.

For specific function. For my own convenience. Remind owner to share data to another DITO user.

Meigo 1 Dec 14, 2021
API RestFull de uma clinica, onde vai efetuar os agendamentos dos pacientes e mostrar o historicos de cada agendamentos

API REstFull O que tem na API Usado para clinicas. Cadastro de pacientes. Agendamentos de pacientes. Históricos dos agendamentos vinculados com a tabe

Lucas Silva 3 Aug 29, 2022
Karen is a Discord Bot that will check for a list of forbidden words/expressions, removing the message that contains them and replying with another message.

Karen is a Discord Bot that will check for a list of forbidden words/expressions, removing the message that contains them and replying with another message. Everything is highly customizable.

Rafael Almeida 1 Nov 03, 2021
Template to create a telegram bot in python

Template for Telegram Bot Template to create a telegram bot in python. How to Run First add src to PYTHONPATH: export PYTHONPATH=${PWD} Then run: pyt

Ali Hejazizo 12 Dec 24, 2022
Allows you to easily share bookmarks from Raindrop.io in Telegram chats.

Allows you to easily share bookmarks from Raindrop.io in Telegram chats. As well as save links/photos/longreads from Telegram right into Raindrop.io. Join us, we have a nice 'reader mode' :)

Oleh 36 Dec 19, 2022
Configure your linux server and check for vulnerabilities with serverlla

serverlla Configure your linux server and check for vulnerabilities with serverlla. Serverlla has a menu with options and allows you to configure your

Dylan Meca 10 Feb 01, 2022
Python Package For MTN Zambia Momo API. This package can also be used by MTN momo in other countries.

MTN MoMo API Lite Python Client Power your apps with Lite-Python MTN MoMo API Usage Installation Add the latest version of the library to your project

Mathews Musukuma 7 Jan 01, 2023
A python bot that will allow you to have maximum luck during Veve drops.

VeveBot You can follow me here Github | Twitter Features: - Click on the purchase at the time of the drop. - Be able to choose to do more than one tes

Rodz 1 Dec 04, 2021
Lol qq parser - A League of Legends parser for QQ data

lol_qq_parser A League of Legends parser for QQ data Sources This package relies

Tolki 3 Jul 13, 2022
Force-Subscribe-Bot - A Telegram Bot to force users to join a specific channel before sending messages in a group

Introduction A Telegram Bot to force users to join a specific channel before sen

LG Bot Updates 0 Jan 16, 2022
Crypto-trading-simulator - Cryptocurrency trading simulator using Python, Streamlit

Crypto Trading Simulator Run streamlit run main.py Dependency Python 3 streamli

Brad 12 Jul 02, 2022
A file-based quote bot written in Python

Let's Write a Python Quote Bot! This repository will get you started with building a quote bot in Python. It's meant to be used along with the Learnin

1 Feb 03, 2022