How I automated checking my rank in a competition


Resources

My 2-minute podcast entry: https://myrodecast.com/listen/entry/3828

SetApp referral for Moment and 200+ other apps trial of 1 month: https://go.setapp.com/invite/devansh4?s=l

Anchor FM page with all episodes: https://anchor.fm/dvnsh

Røde playlist: Sounds Simple https://www.youtube.com/playlist?list=PLZXQp_XoNBBPXk82z2I3p8gajaqI_AyyO

Transcript

Hi. I recently participated in the podcast competition by an Australian company Røde Microphones. I found out about them from an Instagram ad, as I was looking for a mic that would attach to my iPhone, and they happen to have products that do exactly that, and then some. I will put a link to their playlist in my blog post for this video, under the ‘Resources’ heading. But this video is not about their mics.

I have already submitted an entry. I can also see an older version rejected due to some strange issue with the link being broken. But you can’t see this page, you can see this public page for my entry. You can see its link in the bottom-left corner of the screen as I hover my mouse point over the link icon. This is the entry page where you can listen to my episode, which had to be under 2 minutes. You may have to wait for the audio to buffer if your internet is slow, but if that doesn’t work, you can click on this icon in the top-right corner of the embed. That will bring you to the Anchor FM page of my podcast, where all my episodes are hosted and distributed to different platforms. You can not only listen to older episodes, but also read the transcripts with helpful links. I have also given the transcript in the description of the episode for my entry. You could also find this entry from the listen page, where you can discover entries by others.

You can filter by Country, Language, and even find the most voted entries. But you can’t know what is the rank of a particular entry; from the entry page or the listen page. You have to find it yourself, going page by page and count. I can easily count if I use the pagination description at the bottom. But this is too laborious as the rank keeps changing, since people are voting live as the time passes by.

By the way, this menu item is Moment, and you can buy that from their official site or the Mac App Store. They only offer a 7-day trial, but you can get a full month of free use with my SetApp referral code.

Now I want to know my rank but without having to manually sort and search every time. So how would I use my Python skills to solve this problem?

My first preference would be to look for an API to get the number of votes of all entries and then sort them by decreasing number of votes and apply counting logic on that data. But as this is a competition for only a limited time, I understand that no such API would be available as Røde would not invest too much for that. I also see why they don’t continuously find everyone’s rank and update on the website, as that would be too heavy for the server load.

But I want to know only my rank. And I want to know it now, not after the competition is over. So without the availability of an API, I had to resort to the old-school browser automation. For the rest of the video, I will explain how I used selenium driver for Safari to find my rank.