Get ranking and reviews from AppStore

Ranking

App ranking informations can be get from iTunes RSS feeds provided by Apple, currently, at most Top 300 are listed in each feed.

For example, if I want the top 300 grossing apps in "Games" category, after input my requirements, I get the feed URL as follows:

https://itunes.apple.com/us/rss/topgrossingapplications/limit=300/genre=6014/xml

Using python, I chose feedparser as an RSS parser.

1
2
3
4
5
6
feed = feedparser.parse(
'https://itunes.apple.com/us/rss/topgrossingapplications/limit=300/genre=6014/xml')
rank = 0
for entry in feed.entries:
rank+=1
print str(rank), entry['title']

Then, we get the ranking list:

1
2
3
4
5
6
7
8
9
10
11
1 Candy Crush Saga ® - King.com Limited
2 Clash of Clans - Supercell
3 MARVEL War of Heroes - Mobage, Inc.
4 Hay Day - Supercell

...

297 Overkill 2 - Craneballs Studios LLC
298 Earn to Die - Not Doppler
299 Extreme Road Trip 2 - Roofdog Games
300 Lords & Knights - Medieval Strategy MMO - XYRALITY GmbH

Reviews

In the iTunes RSS feeds, we can't find how to get the App reviews, but actually, it has, someone made a little guess.

For example, one could get App's most recent reviews from below feed, by specifying the App ID (535886823) and store country:

https://itunes.apple.com/us/rss/customerreviews/id=535886823/sortBy=mostRecent/xml

1
2
3
4
5
6
7
8
9
10
feed = feedparser.parse(
'https://itunes.apple.com/us/rss/customerreviews/id=535886823/sortBy=mostRecent/xml')
rank = 0
for entry in feed.entries[1:]:
rank += 1
print '****** review %d ******' % rank
print 'title: %s' % entry['title']
print 'content: %s' % entry['content'][0]['value']
print 'author: %s' % entry['author']
print 'rating: %s' % entry['im_rating']

Pay attention, the first entry of this feed is the App description, not reviews.

Result:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
****** review 1 ******
title: Ahhhhhh
content: Ahhhhhh
author: Andrew288195Az
rating: 1
****** review 2 ******
title: Perfect except
content: I still have to switch to safari to "Ctrl+F" a web page.

Seriously?
author: SarahTimmins
rating: 1
****** review 3 ******
title: Crashes too much
content: Title pretty much says it all.
author: RoboWarriorSr
rating: 2
****** review 4 ******
title: My penis is big
content: I have a penis of 1 feet
author: Jiackfabri
rating: 5

...

****** review 49 ******
title: Works great!
content: I was skeptical but I actually really like this browser. Good job Googlé.
author: eSquish
rating: 5
****** review 50 ******
title: Amazing
content: This app/browser is fantastic! It runs fast, and efficient it has shown me the awesomeness that is google and convinced me to buy a chromebook
author: Seandog247
rating: 5

We can only get 50 reviews, but the feeds updated more frequently than the ranking feeds.

There are four types of reviews list,

1
2
3
4
5
6
7
8
Most Recent
https://itunes.apple.com/us/rss/customerreviews/id=535886823/sortBy=mostRecent/xml

Most Helpful
https://itunes.apple.com/us/rss/customerreviews/id=535886823/sortBy=mostHelpful/xml

Most Favorable
Most Critical

I couldn't figure out what the feeds URL are of last two types, if anyone knows, please leave a comment, and I'll update this post.

Code