Skip to main content

SE::Google::Position - Checking site positions by keywords in Google

Scraper Overview

The scraper checks the site's positions by keywords in Google. Thanks to the SE::Google::Position scraper, you can automatically check positions in Google search results using your own domain databases. By using the SE::Google::Position scraper, you can easily, accurately, and quickly determine the site's position in Google.

The A-Parser functionality allows you to save the parsing settings of the SE::Google::Position scraper for further use (presets), set up a parsing schedule, and much more. You can use automatic substitution of subqueries from files.

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

Scraper Use Cases

Collected Data

  • Site position and link to the site page
  • List of all site positions and links to pages
Collected data


  • All capabilities of the SE::GoogleSE::Google scraper
  • Automatically stops parsing when the site is found
  • Supports subdomain search
  • Ability to compare the desired position by domain, by main domain, and by full link
  • Collecting positions for multiple domains at once

Use Cases

  • Checking positions of your own sites and competitor sites
  • Searching for site traffic pages


As queries, you need to specify the domain of the site being searched and the search query separated by a space, for example: новости новости онлайн

If you need to check one site for a list of queries, you can specify the domain in the query format: $query

Or simply use a list of keywords. To use multiple domains in the query at once, you need to specify a list of domains separated by a comma and a space, followed by the keyword, for example:,, новости лента

The results will be recorded in the array $bulkcheck. The Stop when found option is also supported, parsing will stop if positions are found for all domains.

Query Substitutions

You can use built-in macros to automatically substitute subqueries from files, for example, if we want to check sites/site by a list of keywords, we specify several main queries:

In the query format, we specify a macro for substituting additional words from the file Keywords.txt. This method allows checking the base of sites by a list of keywords and obtaining positions as a result:

$query {subs:Keywords}

This macro will create as many additional queries as there are in the file for each original search query, which will result in [number of original queries (domains)] x [number of queries in the Keywords file] = [total number of queries] as a result of the macro's operation.

Result Output Options

A-Parser supports flexible result formatting thanks to the built-in templating engine Template Toolkit, which allows it to output results in any form, as well as in a structured form, for example, CSV or JSON.

Export of Position List

Obtaining the result in the form of:

desired domain - keyword: position number in the SERP

Result format:

$domain - $key: $position\n

Example of the result: - новости: 6 - новости онлайн: 7

Simultaneous check of multiple domains (bulk check)

Information about all domains during the simultaneous check of multiple domains is contained in the array $bulkcheck.

Result format:

$bulkcheck.format('$domain - $position\n')

Example of the request:,, новости лента

Example of the result: - 1 - 3 - 0

Similar to SE::Google.

Similar to SE::Google.

Similar to SE::Google.

Competition of keywords

Similar to SE::Google.

Checking link indexing

Similar to SE::Google.

Saving in SQL format

Similar to SE::Google.

Dumping results to JSON

Similar to SE::Google.

Results Processing

A-Parser allows processing results directly during parsing. In this section, we have provided the most popular use cases for the SE::Google::Position scraper.

Saving domains without zero positions

The example of simultaneous check of multiple domains was taken as a basis (see above in the result output options) and a filter was added.

Add a filter and select the position output variable from the drop-down list. Select the type: >. Then, you need to enter 0 in the Number. With this filter, you can remove all results with a zero position.

Download example

How to import the example into A-Parser


See also: Results Filters

Similar to SE::Google.

Similar to SE::Google.

Extracting Domains

Similar to SE::Google.

Removing Tags from Anchors and Snippets

Similar to SE::Google.

Similar to SE::Google.

Possible Settings

Supports all settings of the SE::GoogleSE::Google scraper, as well as additional:

Parameter NameDefault ValueDescription
Pages count1Number of search result pages to parse (from 1 to 10)
Links per page20Number of links per page in the search result (10 / 20 / 30 / 50 / 100)
Result format$domain - $key: $position\nDefault output format of the result
Stop when foundStop parsing if the domain is found, will not move on to the next pages
Match typeExact domainAbility to compare the desired position by domain, by top-level domain, and by the full URL (Exact domain / Top level domain / Exact url)