Skip to content

Running Analysis ​

Basic Call ​

python
result = client.analyze(
    own_page="https://example.com/page",
    competitors=["https://comp1.com", "https://comp2.com"],
)

All Parameters ​

python
result = client.analyze(
    own_page: str,                          # Your page URL (required)
    competitors: List[str],                 # Competitor URLs — 3-10 recommended (required)
    queries: Optional[List[str]] = None,    # Target search queries (up to 5)
    lang: Literal['ru', 'en'] = 'ru',      # Page language
    url_cookies: Optional[Dict[str, str]] = None,  # Per-URL auth cookies
    triplet_analysis: bool = False,         # Enable Knowledge Graph (5 credits)
    verbose: bool = False,                  # Show tqdm progress bar
)

queries — Target Queries ​

Why queries matter

Queries define which words are used as anchor points for the Umbrella Analysis. All query lemmas are combined and used to locate contextually important words on each page. Without queries, the umbrella analysis has no anchor points and may return fewer or no results.

python
result = client.analyze(
    own_page="https://example.com/mattress",
    competitors=["https://comp1.com/mattress", "https://comp2.com/sleep"],
    queries=[
        "buy mattress online",
        "orthopedic mattress 180x200",
        "best spring mattress",
    ],
)

Up to 5 queries. Longer is better — the more target queries, the more coverage points in the HTML.

lang ​

Affects lemmatization and corpus used for frequency analysis.

ValueLanguage
'ru'Russian (default)
'en'English

When lang='en', action values in block_comparison are returned in English (add, increase, decrease, ok).

url_cookies ​

For pages behind authentication or geo-gates:

python
url_cookies = {
    "https://example.com/private-page": "session=abc123; region=us",
    "https://comp.com/restricted": "auth=xyz",
}

triplet_analysis ​

Standard mode (1 credit) covers lexical analysis. Extended mode (5 credits) additionally extracts a Knowledge Graph from all competitor pages:

python
result = client.analyze(
    own_page=..., competitors=...,
    triplet_analysis=True,  # adds triplets_analysis to result
)

Use extended mode when you need:

  • Fact-level content brief (which entities and properties competitors cover)
  • E-E-A-T / completeness audit
  • Topical gap analysis at entity level (critical / important / unique)

Analysis Duration ​

ModeTypical Duration
Standard30–90 seconds
Extended (triplets)60–180 seconds

Duration depends on page size, number of competitors, and server load.

Credits ​

ModeCredits
Standard1 credit per analysis
Extended5 credits per analysis

Check your balance before running expensive analyses:

python
limits = client.get_limits()
print(f"Remaining today: {limits['remaining_today']}")

Retry on Network Errors ​

python
client = UnihraClient(api_key="YOUR_KEY", max_retries=3)

Retries on status codes 429, 500, 502, 503, 504 with exponential backoff.