follow-sync

command module
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 12, 2017 License: GPL-2.0 Imports: 4 Imported by: 0

README

Follow Sync

Follow Sync is a little Go program that helps you synchronize your Instagram "Following" list. Basically, it can unfollow all profiles that are not following you back.

Screenshot

It uses the Instagram unofficial API (ahmdrz/goinsta) to log in to your account (pretending that it's an Android device), compares your followers and following lists, and provides a summary and a choice of action: go ahead and unfollow the users who don't follow you back, or exit and you can review the data on your own.

This program creates a CSV file named follower-lists-$USERNAME.csv that contains your full list, so you can examine what's on your lists or as a backup in case you want to know who you unfollowed later.

$ go install -u github.com/kirsle/follow-sync
$ follow-sync [-wait DELAY=60]

By default, this program waits 60 seconds between each unfollow. This is the safest rate to stay under Instagram's rate limit, but you can override it if needed. See Caveats below.

Program Usage

Just run the follow-sync executable. It will prompt for your username and password (non-echoed output), collect your friend lists and compare them, and print out a summary.

At this point you can open the follower-lists-$USERNAME.csv in your favorite spreadsheet program if you want to inspect the Following and Follower lists.

The program will prompt for final verification before it goes ahead and begins unfollowing users.

Caveats

Occasionally, the Instagram API can get pretty fussy with rate limits. Most API functions this program calls will panic if it gets an error. No big deal: you can just wait a few minutes and run the program again and it should pick up where it left off.

The safest rate limit according to what documentation I could find is to not unfollow more than 60 profiles per hour. As such, this program has a 60 second delay between each unfollow action by default.

I've seen with shorter delays, such as 2 seconds, that I was able to unfollow between 600 and 900 users before the API rate limited me.

To change the delay between unfollows, use the -wait command line option. For example:

$ follow-sync -wait 2

Distributing

The shell script dist.sh can cross-compile the binary for multiple platforms.

Full list of examples for the platforms I export to:

./dist.sh linux 64
./dist.sh linux 32

./dist.sh windows 64
./dist.sh windows 32

./dist.sh darwin 64

Distributables are put into appropriately-named subdirectories of the dist/ folder, and zipped up along with other project metafiles (README, etc.)

License

Follow-Sync: Instagram Follower Synchronization Tool
Copyright (C) 2017 Noah Petherbridge

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL