def get_info(username): try: browser = init_chromedriver(chrome_options, capabilities) except Exception as exc: print(exc) sys.exit() try: information = [] user_commented_list = [] try: if len(Settings.login_username) != 0: login(browser, Settings.login_username, Settings.login_password) information, user_commented_list = extract_information( browser, username, Settings.limit_amount) except: print("Error with user " + username) sys.exit(1) Datasaver.save_profile_json(username, information) except KeyboardInterrupt: print('Aborted...') finally: browser.delete_all_cookies() browser.close() return information
def __enter__(self): self.browser = init_chromedriver(self.chrome_options, self.capabilities) if Settings.login_username and Settings.login_password: login(self.browser, Settings.login_username, Settings.login_password) return self.browser
def find_real_fans(target_user='******'): followers_list = grab_followers(target_user) sleep(30) fan_list = {} try: browser = init_chromedriver(chrome_options, capabilities) except Exception as exc: print(exc) sys.exit() try: login( browser, Settings.login_username, Settings.login_password) for user in followers_list: print('Extracting information from ' + user) try: information = extract_information(browser, user) fan_list[user] = information except BaseException: print("Error with user " + user) sys.exit(1) Datasaver.save_profile_json(user, information) print("\nFinished.\n") except KeyboardInterrupt: print('Aborted...') finally: browser.delete_all_cookies() browser.close() df = pd.DataFrame(columns=['alias', 'private', 'num_posts', 'num_followers', 'num_following']) for id, element in enumerate(fan_list): alias = element is_private = fan_list[element]['isprivate'] num_posts = fan_list[element]['num_of_posts'] num_followers = fan_list[element]['followers']['count'] num_following = fan_list[element]['following']['count'] info = [alias, is_private, num_posts, num_followers, num_following] tmp = pd.DataFrame([info], columns=['alias', 'private', 'num_posts', 'num_followers', 'num_following']) df = df.append(tmp, ignore_index=True) print(id, info) df.to_csv('real_fans_of_{}.csv'.format(target_user), sep='\t', encoding='utf-8') return df
try: browser = init_chromedriver(chrome_options, capabilities) except Exception as exc: print(exc) sys.exit() try: usernames = get_all_user_names() for username in usernames: print('Extracting information from ' + username) information = [] user_commented_list = [] try: if len(Settings.login_username) != 0: login(browser, Settings.login_username, Settings.login_password) information, user_commented_list = extract_information( browser, username, Settings.limit_amount) except: print("Error with user " + username) sys.exit(1) # pdb.set_trace() Datasaver.save_profile_json(username, information) # print ("Number of users who commented on their profile is ", len(user_commented_list),"\n") # Datasaver.save_profile_commenters_txt(username,user_commented_list) # print ("\nFinished. The json file and nicknames of users who commented were saved in profiles directory.\n") except KeyboardInterrupt: