コード例 #1
0
def scrapeAchievements():

    for h in range(1, 74):
        tempurl = baseurl + '/achievement/' + str(h)
        req = urllib.request.Request(tempurl,
                                     headers={'User-Agent': 'Mozilla/5.0'})
        try:
            thejson = urllib.request.urlopen(req, context=context)
        except:
            pass
        else:
            data_bytes = thejson.read().decode('utf-8')
            data = json.loads(data_bytes)

            achievement_id = data['id']
            name = data['name']
            description = data['description']
            reward = data['reward']['name']
            reward_type = data['reward']['type']['name']
            reward_quality = data['reward']['quality']['name']

            f_key = None
            if (data['hero'] is not None):
                f_key = data['hero']['id']

        #

    #all the url, info to create each json
    # print(str(achievement_id) + " "+ name + "\n"+ description)
            achieve = Achievement(achievement_id, name, description, reward,
                                  reward_type, reward_quality, f_key)
            db.session.add(achieve)
            db.session.commit()
コード例 #2
0
    def post(self):
        logging.info('newAchievement posted')

        # Get the current Cheever's profile so we can update their numContribs
        cheever_key = ndb.Key('Cheever', self.user.email())
        cheever = cheever_key.get()

        # Create new achievement with auto - generated key
        achievement = Achievement()

        achievement.populate(
            title=self.request.get('title'),
            description=self.request.get('description'),
            category=self.request.get('category'),
            score=int(self.request.get('score')),
            contributor=cheever.username,
            verified=False
        )

        cheever.numContribs += 1

        # Commit our updates to the datastore
        @ndb.transactional(xg=True)
        def commit():
            achievement.put()
            cheever.put()

        commit()

        self.redirect('/profile')
コード例 #3
0
    def create(name, short_description, long_description, difficulty, image_src, bg_image_src):
        """ Create a new user """
        achievement = Achievement(
            name=name, short_description=short_description, long_description=long_description,
            difficulty=difficulty, image_src=image_src, bg_image_src=bg_image_src
        )

        return achievement.save()
コード例 #4
0
    def mutate(self, info, achievement_data=None):
        threshold = UserMetrics(
            works_visited=achievement_data.threshold.works_visited,
            works_found=achievement_data.threshold.works_found)
        achievement = Achievement(title=achievement_data.title,
                                  description=achievement_data.description,
                                  points=achievement_data.points,
                                  threshold=threshold)
        achievement.save()

        return CreateAchievementMutation(achievement=achievement)
コード例 #5
0
def init_db():
    art = [
        Artwork(title="Street Art", description="A true masterpiece", location=[7,80]),
        Artwork(title="Hidden Subway Mural", description="Far side of the subway station has a double walled mural.", location=[10,132]),
        Artwork(title="Blue Bridge", description="Neon blue tentacles of paint wind up the struts of the bridge", location=[0,0], tags=["amazing"]),
        Artwork(title="Artistic Underpass", description="Bridge ceiling covered in art", location=[0,0], tags=["surreal", "amazing"]),
        Artwork(title="Fire Wall", description="Tongues of flame comemorate the historic fire of this district", tags=["sad", "historic", "amazing"], location=[0,0]),
        Artwork(title="Street Corner Fresco", description="This popular street has a decorative fresco spilling out of the alley behind a popular restaurant", tags=["amazing", "unreal"], location=[0,0])
    ]

    for a in art:
        a.save()

    portfolios = [
        Portfolio(artworks=[art[0], art[1]]),
        Portfolio(artworks=[art[2], art[4]]),
        Portfolio(artworks=[art[1], art[2], art[3]]),
        Portfolio(artworks=[art[3], art[5]]),
    ]
    for p in portfolios:
        p.save()

    users = [
        User(name="Grant", portfolio=portfolios[0], bio="Love me some AI and maybe web dev."),
        User(name="Braden", portfolio=portfolios[1], bio="Spending some time on CSC 400."),
        User(name="Kyle", portfolio=portfolios[2], bio="Fitness, meditation and good books."),
        User(name="John", portfolio=portfolios[3], bio="Looking around for some art. Wasn't satisfied with my dope Windows Vista wallpaper.")
    ]
    for user in users:
        user.save()

    achievements = [
        Achievement(title="Noob", description="You signed up for the service!", points=10)
    ]
    for a in achievements:
        a.save()

    for user in users:
        user.achievements.append(achievements[0])
    for user, portfolio in zip(users, portfolios):
        portfolio.owner = user

    
    for portfolio in portfolios:
        portfolio.save()