Example #1
0
 def __init__(self, target, logger, noprint=False, nolog=False, verbose=False):    
     self.URL = 'http://ip-api.com'
     self.RequestURL = self.URL + '/json/{}'
     self.BOLD = '\033[1m'
     self.Proxy = None
     self.UserAgentFile = None
     self.UserAgents = None
     self.Proxies = None
     self.TargetsFile = None
     self.ProxiesFile = None
     self.Targets = None
     self.NoPrint = noprint
     self.Target = target
     self.Logger = logger
     self.Utils = Utils(nolog, verbose)
Example #2
0
    def parsePost(self, post):
        # View pretty json - http://jsonformatter.curiousconcept.com/
        print(post)

        pid = post["id"]
        user = post["user"]["username"]
        name = post["user"]["full_name"]
        tags = post["tags"]
        caption = post["caption"]
        location = post["location"]
        created_time = datetime.fromtimestamp(int(
            post["created_time"])).strftime('%Y-%m-%d %H:%M:%S')
        images = post["images"]
        photo = images["standard_resolution"]["url"]
        profile_picture = post["user"]["profile_picture"]
        likes = post["likes"]
        comments = post["comments"]

        text = ""
        if caption:
            text = caption["text"]

        if location:
            latitude = location["latitude"]
            longitude = location["longitude"]

            print("[*] Post ID: %s" % pid)
            print('[*] User: %s' % user)
            print('[*] Full name: %s' % name)
            print('[*] Date of creation: %s' % created_time)
            print('[*] Tags:  %s' % tags)
            print('[*] Latitude: %s - Longitude: %s' % (latitude, longitude))
            print('[*] Photo: %s' % (photo))
            print('[*] Text: %s' % text)
            print('')

            utils = Utils()
            person = utils.get_user(user, name, profile_picture)
            p = utils.save_post(pid, person, created_time, photo, text,
                                latitude, longitude, "Instagram")
            utils.save_tags(tags, p)

            if len(likes["data"]) > 0:
                c = utils.save_connection(p, 0)
                for like in likes["data"]:
                    person_who_likes = utils.get_user(like["username"],
                                                      like["full_name"],
                                                      like["profile_picture"])
                    c.user.add(person_who_likes)
                    print('[+] Like from: %s' % (person_who_likes.login))

            if comments["count"] > 0:
                for comment in comments["data"]:
                    c = utils.save_connection(p, 1, comment["text"])
                    person_who_comments = utils.get_user(
                        comment["from"]["username"],
                        comment["from"]["full_name"],
                        comment["from"]["profile_picture"])
                    c.user.add(person_who_comments)
                    print('[+] Comment from: %s' % person_who_comments.login)
            print('')
        return created_time