├── .gitignore ├── README.md ├── follow_bot.py └── remove_users.py /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | *.xml 3 | 4 | *.iml 5 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Follow people on Github to get more followers 2 | 3 | 4 | * Follows people from the most followed on github, thus more likely to follow. 5 | * Depending on internet connection, script will run over 24-48 hours. 6 | 7 | **Considered spammy so use at your own risk 8 | 9 | ### Requirements 10 | 11 | * Selenium Python Webdriver, if the latest Firefox version is on your computer or device, the Webdriver may not work. Sometimes this occurs with just 1 version number. 12 | 13 | ### Misc 14 | 15 | Make sure you are careful when using this, good way to inflate your follower base (without legitamelty building something awesome) it will be apparent that you are being spammy. After following 170k people I got an email from github to knock it off. I then rewrote this to simply click all "unfollow" buttons (rather easy). 16 | 17 | Good luck, and may this help you out in your "fake it until you make it shemes." (: 18 | -------------------------------------------------------------------------------- /follow_bot.py: -------------------------------------------------------------------------------- 1 | from selenium import webdriver 2 | import time 3 | import sys 4 | 5 | reload(sys) 6 | sys.setdefaultencoding('utf-8') 7 | 8 | # Firefox used 9 | driver = webdriver.Firefox() 10 | # base url 11 | driver.get("http://github.com/login") 12 | 13 | username = driver.find_element_by_id("login_field") 14 | password = driver.find_element_by_id("password") 15 | 16 | # password and username need to go into these values 17 | username.send_keys("username for github") 18 | time.sleep(1) 19 | password.send_keys("password for github") 20 | time.sleep(1) 21 | 22 | login_form = driver.find_element_by_xpath("//input[@value='Sign in']") 23 | time.sleep(1) 24 | login_form.click() 25 | time.sleep(1) 26 | 27 | # These are some of the most popular users on github 28 | prepend = ["jashkenas", "ruanyf", "substack", "kennethreitz", "jlord", "daimajia", "mdo", "schacon", "mattt", 29 | "sindresorhus", "defunkt", "douglascrockford", "mbostock", "jeresig", 30 | "mojombo", "addyosmani", "paulirish", "vczh", "romannurik", "tenderlove", "chriscoyier", "johnpapa", 31 | "josevalim", 32 | "charliesome", "CoderMJLee", "ry", "antirez", "muan", "isaacs", "angusshire", 33 | "hadley", "hakimel", "yyx990803", "fat", "fabpot", "ibireme", "tekkub", 34 | "BYVoid", "laruence", "onevcat", "tpope", "mrdoob", "LeaVerou", "chrisbanes", "wycats", "lifesinger", 35 | "cloudwu", "mitsuhiko", "michaelliao", "ryanb", "clowwindy", "JacksonTian", "yinwang0", "Trinea", 36 | "pjhyett", "dhh", "gaearon"] 37 | 38 | for user in prepend: 39 | for t in range(1, 100): 40 | string = "https://github.com/{}/followers?page={}".format(user, t) 41 | driver.get(string) 42 | time.sleep(1) 43 | 44 | # make sure to pick the correct directory to save the files to 45 | # follow_button = driver.find_elements_by_xpath("//button[@type='submit']") 46 | follow_button = driver.find_elements_by_xpath("//button[@aria-label='Follow this person']") 47 | 48 | # Once page is loaded this clicks all buttons for follow 49 | try: 50 | for i in follow_button: 51 | i.submit() 52 | except: 53 | pass 54 | time.sleep(1) 55 | 56 | driver.close() 57 | -------------------------------------------------------------------------------- /remove_users.py: -------------------------------------------------------------------------------- 1 | from selenium import webdriver 2 | import time 3 | import sys 4 | reload(sys) 5 | sys.setdefaultencoding('utf-8') 6 | 7 | 8 | 9 | 10 | #Firefox used 11 | driver = webdriver.Firefox() 12 | # base url 13 | driver.get("http://github.com/login") 14 | 15 | username = driver.find_element_by_id("login_field") 16 | password = driver.find_element_by_id("password") 17 | 18 | # password and username need to go into these values 19 | username.send_keys("username") 20 | time.sleep(1) 21 | password.send_keys("password") 22 | time.sleep(1) 23 | 24 | 25 | login_form = driver.find_element_by_xpath("//input[@value='Sign in']") 26 | time.sleep(1) 27 | login_form.click() 28 | time.sleep(1) 29 | 30 | prepend = ["your_username"] 31 | 32 | 33 | for user in prepend: 34 | for i in range(0, 200): 35 | for t in range(1, 100): 36 | string = "https://github.com/{}/following?page={}".format(user, t) 37 | driver.get(string) 38 | time.sleep(1) 39 | 40 | follow_button = driver.find_elements_by_xpath("//button[@aria-label='Unfollow this person']") 41 | 42 | # time.sleep(1) 43 | # print len(follow_button) 44 | try: 45 | for i in follow_button: 46 | i.submit() 47 | except: 48 | pass 49 | time.sleep(1) 50 | 51 | 52 | 53 | driver.close() 54 | 55 | time.sleep(3) 56 | 57 | time.sleep(3) 58 | 59 | driver.close() --------------------------------------------------------------------------------