Find when someone unfollows you on instagram. Make only meaningful connections instead of fake followers.
An app to check on instagram, who unfollowed you, your followers, your followings, who is not following back.
- Clone this repo.
- Execute
pip install -r requirements.txt
in root directory of cloned repo to install dependencies. - You will need to have installed
Microsoft Visual C++ Build Tools ^14.x
on Windows forpycryptodome
to install.
python app.py
....
- All requests from client should be sent in POST method.
- At the first instance of client, the client should send relevant variables of Diffie-Hellman Method and a unique id (e.g. uuid) to
domain.name/establishencryption
. The server will create DH key and store it with the reference of unique id received from client. It will then send the relevant variable of DH method to client so that client can create and store the key as well. Seeestablishencryption
function inapp.py
andgenerate_exchange_DH_key
function inclient/js/custom.js
to get the idea. - The client should send its unique id created in first instance to
domain.name/confirmkeyexchange
to confirm that server has stored the key. - In future requests, the client will encrypt the
password
to be sent with the secret key generated via DH Method and will send its unique id with every request. The server will decrypt the password with stored secret key referenced via unique client id. Seedecrypt_data
function inapp.py
andencrypt_data
function inclient/js/custom.js
to get the idea. - All other endpoints will receive
username
,password
(encrypted with DH key),_ID
(unique id of client) and with the addition ofother_user_id
(id of the user to follow/unfollow) for follow and unfollow endpoints. - A web based client example is in
client
directory. Seeclient/js/custom.js
to get the idea.
exchange secret key via Diffie-Hellman Method.
receives
_N
,_G
,_X
and_ID
(client specific id generated by client) variables in formdata. Seeestablishencryption
function inapp.py
andgenerate_exchange_DH_key
function inclient/js/custom.js
to get the idea.
confirms whether the key has been exchanged or not.
receives
_ID
(client specific id) variables in formdata.
logs the user in and saves the cookie file if does not exist before.
receives
username
,password
and_ID
(client specific id) variables in formdata.
get currently logged in user's data.
receives
username
,password
and_ID
(client specific id) variables in formdata.
get followers list
receives
username
,password
and_ID
(client specific id) variables in formdata.
get following list
receives
username
,password
and_ID
(client specific id) variables in formdata.
get unfollowers list
receives
username
,password
and_ID
(client specific id) variables in formdata.
follow a user
receives
username
,password
,other_user_id
(id of the user to follow) and_ID
(client specific id) variables in formdata.
unfollow a user
receives
username
,password
,other_user_id
(id of the user to unfollow) and_ID
(client specific id) variables in formdata.
reset unfollowers list
receives
username
,password
, and_ID
(client specific id) variables in formdata.
logout from current device
receives
username
,password
, and_ID
(client specific id) variables in formdata.
logout and delete holding user data from server
receives
username
,password
, and_ID
(client specific id) variables in formdata.