I've previously written a very similar project called "graphql-scraper" (which is arguably a far less cool name...), you can check it out at <a href="http://github.com/lachenmayer/graphql-scraper" rel="nofollow">http://github.com/lachenmayer/graphql-scraper</a><p>It works very similarly, with only superficial differences under the hood (eg. I used jsdom, and this uses cheerio). The `waitForSelector` feature is very cool!<p>You can see a live demo of the HN example using graphql-scraper at <a href="https://graphqlbin.com/v2/lxNohP" rel="nofollow">https://graphqlbin.com/v2/lxNohP</a><p>This example is deployed on Glitch - you can easily spin up your own using <a href="https://github.com/lachenmayer/graphql-scraper-server" rel="nofollow">https://github.com/lachenmayer/graphql-scraper-server</a> (with 1-click deploys to Heroku, Now & Glitch)<p>Of course (as mentioned already) there is also <a href="https://github.com/syrusakbary/gdom" rel="nofollow">https://github.com/syrusakbary/gdom</a> which uses Python+Graphene.