Skip to main content

AppStore::Apps - App Store app scraper

AppStore::Apps

AppStore::AppsAppStore::Apps – scrapes app data from the App Store. Automated collection of all data: title, rating, author, description, app link, and price.

You can use automatic query multiplication, substitution of subqueries from files, permutation of alphanumeric combinations and lists to obtain the maximum possible number of results. Using results filtering you can immediately clean the result by removing all unnecessary clutter (using negative keywords).

A-Parser functionality allows you to save parsing settings for the AppStore::Apps scraper for further use (presets), set parsing schedules, and much more.

Saving results is possible in the form and structure you need, thanks to the built-in powerful Template Toolkit which allows you to apply additional logic to results and output data in various formats, including JSON, SQL, and CSV.

Collected data

Data is collected from the service apps.apple.com

  • Name
  • Subtitle
  • Author and link to author
  • Rating and number of reviews
  • Age rating
  • Price
  • Image (icon)
  • Description
  • Version
  • Size
  • Category
  • Link to the app

Capabilities

  • Choice of country from which the search is performed
  • Search by price (Free or Paid)
  • Search by rating (All or above 4+)

Use Cases

  • Scraping app data from the App Store
  • Monitoring competitors in the App Store
  • Collecting apps by keywords

Queries

As queries, you need to specify phrases for which the search will be performed in the App Store, for example:

mobile legends
casino
time tracker

Query substitutions

You can use substitution macros for automatic substitution of subqueries from files, for example, we want to add a list of other words to each query, let's specify several main queries:

fantasy
tower defense
rpg

In the query format, we will specify a macro for substituting additional words from the file keywords.txt, this method allows increasing query variability manifold:

{subs:keywords} $query 

Output results examples

A-Parser supports flexible result formatting thanks to the built-in Template Toolkit, which allows it to output results in arbitrary form, as well as in structured formats like CSV or JSON.

Default output

Result format:

$serp.format('$link\n')

Result example:

https://apps.apple.com/us/app/mobile-legends-bang-bang/id1160056295
https://apps.apple.com/us/app/mobile-legends-adventure/id1448605031
https://apps.apple.com/us/app/mobile-strike-modern-war/id931630086

Output in CSV table

Result format:

[% FOREACH item IN p1.serp; 
tools.CSVline(item.link, item.name, item.author, item.rating, item.price, item.category);
END %]

File name:

$datefile.format().csv

Initial text:

Link,Name,Author,Rating,Price,Category

tip

In the Result Format, the Template Toolkit is used to output elements of the $serp array in a FOREACH loop.

In the result file name, you just need to change the file extension to csv.

To make the "Prepend text" option available in the Task Editor, you need to activate "More options". In "Prepend text", write the column names separated by commas and make the second line empty.

Saving in SQL format

Result format:

[% FOREACH serp;
"INSERT INTO serp VALUES('" _ name _ "', '" _ rating _ "', '" _ author _ "', '" _ price _ "')\n";
END %]

Result example:

INSERT INTO serp VALUES('Mobile Legends: Bang Bang', '4.6', 'Moonton', 'Free')
INSERT INTO serp VALUES('PUBG MOBILE', '4.5', 'KRAFTON, Inc.', 'Free')
INSERT INTO serp VALUES('Fortnite', '4.3', 'Epic Games', 'Free')

Dump results to JSON

Common result format:

[% IF notFirst;
",\n";
ELSE;
notFirst = 1;
END;

obj = {};
obj.serp = [];

FOREACH item IN p1.serp;
obj.serp.push({
link = item.link
name = item.name
author = item.author
rating = item.rating
price = item.price
category = item.category
});
END;

obj.json %]

Initial text:

[

Final text:

]

Result example:

[{"serp": [{"link":"https://apps.apple.com/us/app/mobile-legends-bang-bang/id1160056295","name":"Mobile Legends: Bang Bang","author":"Moonton","rating":"4.6","price":"Free","category":"Games"},{"link":"https://apps.apple.com/us/app/pubg-mobile/id1330123889","name":"PUBG MOBILE","author":"KRAFTON, Inc.","rating":"4.5","price":"Free","category":"Games"}]}]
tip

To make the "Prepend text" and "Append text" options available in the Task Editor, you need to activate "More options".

Possible settings

ParameterDefault valueDescription
CountryUnited StatesChoice of country from which the search is performed.
Results count10Number of results per query (maximum 200).
PriceAllFiltering results by price (All, Free only, Paid only).
Min ratingAllFiltering results by rating (All or 4+ stars).