def get_posts_by_user(username, number, detail, debug): if username: ins_crawler = InsCrawler(has_screen=debug) if settings.login: ins_crawler.login() return ins_crawler.get_user_posts(username, number, detail) else: pass
def check_targets(debug, threads_number): if not threads_number: threads_number = 4 targets_list = get_unchecked_targets(threads_number) for hits in targets_list: ins_crawler = InsCrawler(has_screen=debug) if settings.login: ins_crawler.login() Thread(target=ins_crawler.check_targets, args=(hits, )).start()
def get_popular_users(starting_user, debug, threads_number): if not threads_number: threads_number = 4 users_list = get_unchecked_profiles(threads_number) for hits in users_list: ins_crawler = InsCrawler(has_screen=debug) if settings.login: ins_crawler.login() Thread(target=ins_crawler.check_popular_profiles_elastic, args=(hits, )).start()
def get_profile(username, debug=False, follow_list_enabled=False): ins_crawler = InsCrawler(has_screen=debug) ins_crawler.login() return ins_crawler.get_user_profile(username, follow_list_enabled)
def get_posts_by_user(username, number, detail, debug, ins_crawler=None): if ins_crawler is None: ins_crawler = InsCrawler(has_screen=debug) ins_crawler.login() return ins_crawler.get_user_posts(username, number, detail)
logger = logging.getLogger(__name__) if args.mode in ["posts", "posts_full"]: arg_required("username") posts = get_post_full(args.username, args.number, args.debug) output( posts, args.output, ) elif args.mode == "profile": arg_required("username") ins_crawler = InsCrawler(has_screen=args.debug) ins_crawler.login() profile = ins_crawler.get_user_profile(args.username, True) profile['capture_time'] = int(datetime.now().timestamp()) output(profile, args.output) persist = Persist() profile["username"] = args.username try: persist.persistProfile(profile) except: persist.db.rollback() id_profile = persist.getUserIdByUsername(args.username) if id_profile is None: logger.error( 'The profile of specified username does not exist') raise Exception(
def get_network_by_username(username, depth, debug): ins_crawler = InsCrawler(has_screen=debug) ins_crawler.login() return ins_crawler.get_network_by_username(username, depth)