Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Correia-jpv/github-follow-bot
🤖 Automated follow/unfollow bot for GitHub. Follow from multiple sources. Choose which users to unfollow. Custom options to control bot speed and maximum actions.
https://github.com/Correia-jpv/github-follow-bot
auto-follow auto-unfollow automatic automation bot bots follow follow-bot follow-unfollow follower-robot followers following github github-api github-automation github-bot python unfollow unfollow-bot unfollow-users
Last synced: 3 months ago
JSON representation
🤖 Automated follow/unfollow bot for GitHub. Follow from multiple sources. Choose which users to unfollow. Custom options to control bot speed and maximum actions.
- Host: GitHub
- URL: https://github.com/Correia-jpv/github-follow-bot
- Owner: Correia-jpv
- License: mit
- Created: 2022-01-10T19:53:28.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2024-04-14T21:20:21.000Z (10 months ago)
- Last Synced: 2024-05-01T16:21:46.104Z (9 months ago)
- Topics: auto-follow, auto-unfollow, automatic, automation, bot, bots, follow, follow-bot, follow-unfollow, follower-robot, followers, following, github, github-api, github-automation, github-bot, python, unfollow, unfollow-bot, unfollow-users
- Language: Python
- Homepage:
- Size: 69.3 KB
- Stars: 76
- Watchers: 3
- Forks: 13
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
GitHub Follow Bot
ÂTable of Contents
- [Disclaimer](#disclaimer)
- [Getting Started](#getting-started)
- [Install Requirements](#install-requirements)
- [Authenticate](#authenticate)
- [Get a GitHub Personal Access Token](#get-a-github-personal-access-token)
- [Add your GitHub username and PAT to `.env` file](#add-your-github-username-and-pat-to-env-file)
- [How to Use](#how-to-use)
- [Follow](#follow)
- [Target user's followers](#target-users-followers)
- [Followers of the most popular users from a country](#followers-of-the-most-popular-users-from-a-country)
- [From a file](#from-a-file)
- [Unfollow](#unfollow)
- [All](#all)
- [Followers](#followers)
- [Non-followers](#non-followers)
- [From a file](#from-a-file-1)
- [Options](#options)
- [Maximum follows/unfollows](#maximum-followsunfollows)
- [Speed](#speed)
- [Future Implementation](#future-implementation)
- [Contributing](#contributing)
- [Resources](#resources)## 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](https://docs.github.com/en/github/site-policy/github-acceptable-use-policies#4-spam-and-inauthentic-activity-on-github)
## Getting Started
### 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](https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line)
#### 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.
```
GITHUB_USER=YOUR_GITHUB_USERNAME
TOKEN=YOUR_GITHUB_PERSONAL_ACCESS_TOKEN
```## How to Use
### Follow
#### Target user's followers
```
python bot_follow.py -t
```
#### Followers of the most popular users from a country
([list of valid countries](https://github.com/gayanvoice/top-github-users#readme))
```
python bot_follow.py -p
```
#### From a file
Follow users from a pre-generated file (JSON)
```
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
Unfollow all your followings
```
python bot_unfollow.py -a
```
#### Followers
Only unfollow users who already follow you
```
python bot_unfollow.py -fo
```
#### Non-followers
Only unfollow users who don't follow you back
```
python bot_unfollow.py -nf
```
#### From a file
Unfollow users from a pre-generated file (JSON)
```
python bot_unfollow.py -f
```### Options
#### Maximum follows/unfollows
Set the 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
```
-slmin 600
```
- Maximum delay when rate limited
```
-slmin 1500
```## Future Implementation
- Schedule - Bot only performs actions between set time and sleeps after off-schedule
- Max follow per source - Follow max `n` per popular user
- Add follow source - Follow users per topic
- 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! Read the [contribution guidelines](https://github.com/Correia-jpv/.github/blob/main/CONTRIBUTING.md#contributing) first.
Wish there was another feature? Feel free to open an [feature request issue](/../../issues/new?assignees=Correia-jpv&labels=enhancement&template=feature-request.md&title=%5BREQUEST%5D) with your suggestion!
If you find a bug, kindly open an [bug report issue](/../../issues/new?assignees=Correia-jpv&labels=bug&template=bug_report.md&title=%5BBUG%5D) as described in the contribution guidelines.
## Resources
- [GitHub API](https://docs.github.com/en/rest)
- [Top GitHub Users By Country](https://github.com/gayanvoice/top-github-users)
- [GitHub-Follow-Bot](https://github.com/TheDarkAssassins/Github-Follow-Bot)