Solutions to “Just KNIME It!” Challenge 10 - Season 4

:exploding_head: Wow, folks, we just posted justknimeit’s challenge 10! Season 4 is evolving fast, but remember that you’re always welcome to join our community even if you’re very new to KNIME. Just KNIME It! is for everybody! :wink:

:video_game: Our challenge this week is fun and easy like Summer should be. As a game lover, you decide to automate the exploration of gaming deals under 30 dollars using the CheapShark API. With the deals identified, how can you best process and display the top offers you found? :bar_chart:

Here is the challenge. Let’s use this thread to post our solutions to it, which should be uploaded to your public KNIME Hub spaces with tag JKISeason4-10 .

:sos: Need help with tags? To add tag JKISeason4-10 to your workflow, go to the description panel in KNIME Analytics Platform, click the pencil to edit it, and you will see the option for adding tags right there. :blush: Let us know if you have any problems!

2 Likes

Hi everyone,

this is my solution for this week’s challenge: JKISeason4-10 – KNIME Community Hub

Workflow:

Visual:

Keeping it short this time :blush:. If I get the chance, I’ll try to tweak it over the weekend.

Have a nice day everyone!

2 Likes


Echoes of my favorite challenge from last year - the Pokemon one.

2 Likes

Quick question for the community (or maybe for the KNIME team itself :eyes:):
In the challenge description, it’s suggested to exclude games with a Steam rating of 0 and also to remove duplicate titles. However, while working on the dataset provided by the API, I couldn’t find any game with a rating of 0, nor any duplicate titles.

Maybe I missed something, or maybe the API data has changed since the challenge was designed? :thinking: Curious to hear if anyone else noticed this — or if there’s a trick hidden somewhere in the data that escaped me!

Thanks in advance to anyone who wants to share their perspective — as always, great fun working through this with all of you. :rocket::video_game:

:clap: :clap: :clap: :clap:
wow! a very stunning visual!

Here is my solution: JKISeason4-10 Game Deals – KNIME Community Hub

I have struggled with a few things…The header in response gives a x-total-page-count = 50. But it seems like it’s 51, so my loop misses the last page. And i always find the reporting difficult. Aiming to get better at it :slightly_smiling_face:


2 Likes

Maybe you are only looking at the first page (60 records). If you extract them all, you will see dupliates because there are sometimes many deals for the same game. You will also see some games that were not evaluated by Metacritic. You can check this in my solution.

2 Likes

Thanks @topsbog1 for the tip about the total pages. I’ve also added a delay to the GET requests to prevent hitting HTTP status code 429.

1 Like

Now get:

1 Like

Hi all,

Nice challenge - using APIs and JSON to get the right information.

I also took the chance to download the images of the games. Some of them have a link to a “.webp” image (Google?) and therefore the binary to PNG is not working - so these have no images in my solution. I might work on that when I have time!

Solution is here: JKISeason 4-10 - Find the best deals for PC games – KNIME Community Hub

The dashboard shows the top 5 games with the biggest discount and highest rating. It also shows all the games in the table under.
Grouping by title remove a lot of games - it seems that we get one entry per sales over time.

I get all the games for all the stores: this can be improved and let the user the choice of the store and other options for example.

Enjoy all!
Cheers
Jerome

1 Like

Thanks a lot for the tip — you just pulled me out of the swamp I was stuck in! :sweat_smile:
I hadn’t realized at all there was a pageNumber parameter in the API (clearly not something I use often enough… :see_no_evil:).
Thanks to your advice, I’m now finally seeing all the deals, not just the first page.

Much appreciated for sharing your insights so generously! :pray::rocket:

1 Like

Happy to share my solution for this week’s justknimeit challenge! :video_game:

My solution to JKI4-10

After retrieving the dataset via the GET Request node, I focused on adding some interactive elements to make data exploration more enjoyable:
:white_check_mark: A Table View to browse all deals at a glance;
:white_check_mark: A quick aggregation of ratings by averaging the three existing ones (after normalizing them to a common scale);
:white_check_mark: Some visual flair with game icons for a more user-friendly experience.

A side note (and a tiny plea for advice :sweat_smile:): my approach for inserting the imagesusing the nodes I selected might still have room for improvement. If anyone has tips to make this part more efficient, I’m all ears!

Special thanks to @topsbog1 who kindly pulled me out of my programmer’s block with a brilliant suggestion — sometimes the simplest tricks are the ones we overlook the most.

Thanks also to @hanantoprabowo for the clever tip about handling total pages! :vertical_traffic_light:
It really helped me get unstuck — and adding a small delay between GET requests (to avoid the infamous HTTP 429) was a trick I shamelessly borrowed too. :smile:
Sometimes it’s these little practical details that make all the difference.

:sparkles:**Great to have the chance to compare approaches and learn from each other — open to any feedback or suggestions!**:sparkles:

2 Likes

Here’s my solution. Nothing fancy. Two tables including the cheapest source of games - one filtered by Steam Ratings which the user can choose interactively, the second by Metacritic scores. I included the store name. I converted the JSON to XML since I find it easier to work with XPath.

1 Like

Stunning visuals as always—kudos to you, @PVergati!

Happy to play a small part in your grand masterpiece :wink:

1 Like

Hi everyone,

Got some great inspiration from @jproudfoot111’s tile views—huge thanks! I’ve updated the original workflow to include more visuals and context.

Workflows:

  1. Data Extraction
  2. Data Processing
  3. Data Visualization

Visuals:

  1. Allows users to filter games based on different criterion, and provide overall KPIs
  2. Provide top three recommendations to users based on Sale Price, Savings, Metacritic Score, Steam Rating (%), Deal Rating and Average Score, e.g.
  3. Provide games distribution by Steam Rating Summary, Sale Price and Average Score
  4. Table view for users to search and sort by columns of interest

Have a great weekend everyone!

1 Like

WoW! :clap::clap::clap::clap::clap::clap::clap:
An incredible update

1 Like