Esempio n. 1
0
    def batch_processing(cls, users_attributes, tweets_attributes):
        [
            u_attr.update({
                'created_at':
                datetime.datetime.strptime(u_attr['created_at'],
                                           cls.DATETIME_FORMAT),
                'modified':
                datetime.datetime.strptime(u_attr['modified'],
                                           cls.DATETIME_FORMAT)
            }) for u_attr in users_attributes
        ]
        users = User.create_or_update(*users_attributes)
        [
            t_attr.update({
                'created_at':
                datetime.datetime.strptime(t_attr['created_at'],
                                           cls.DATETIME_FORMAT),
                "coordinates":
                t_attr.get("coordinates") if t_attr.get("coordinates") else
                getattr(users[k], "coordinates", [])
            }) for k, t_attr in enumerate(tweets_attributes)
        ]

        tweets = Tweet.create_or_update(*tweets_attributes)
        for k, tweet in enumerate(tweets):
            users[k].posts.connect(tweet)
Esempio n. 2
0
    def batch_processing(cls, users_attributes, tweets_attributes):
        [
            u_attr.update({
                'created_at':
                datetime.datetime.strptime(u_attr['created_at'],
                                           cls.DATETIME_FORMAT),
                'modified':
                datetime.datetime.strptime(u_attr['modified'],
                                           cls.DATETIME_FORMAT)
            }) for u_attr in users_attributes
        ]

        users = User.create_or_update(*users_attributes)

        [
            t_attr.update({
                'created_at':
                datetime.datetime.strptime(t_attr['created_at'],
                                           cls.DATETIME_FORMAT),
                "coordinates":
                t_attr.get("coordinates") if t_attr.get("coordinates") else
                getattr(users[k], "coordinates", [])
            }) for k, t_attr in enumerate(tweets_attributes)
        ]

        tweets = Tweet.create_or_update(*tweets_attributes)

        for k, tweet in enumerate(tweets):
            users[k].posts.connect(tweet)
            # Connect tweet with the company it mentions
            # company_name = cls.find_company(tweet.text)
            # company_node = Company.nodes.get(name=company_name)
            # tweet.tweet_about.connect(company_node)

            # for demo
            company_event = Event.nodes.get(name='Autopilot rolled out')
            company_event.tweet_from.connect(tweet)