## Amazon


An `amazon` job, which scrapes an Amazon URL.


Usage

``` python
Amazon()
```


The API runs a product URL as an `amazon_product` job and a search URL as an `amazon_search` job, and appends `language=<locale>` to every URL. A Best Sellers URL may render and bill as a rendered result. The model takes no `domain`, because the URL's host sets it, and no `start_page` or `pages`, because the API bills them with no effect. [What a live test shows about the Amazon models](https://github.com/ozanozbeker/oxyscraper/blob/main/docs/research/live-amazon.md) records the run that checked it.


## Attributes


`url: str`  
An Amazon URL. The API rejects a URL outside Amazon for free, and rejects `parse=True` for free on a page type without a dedicated parser.

`locale: _AmazonLocale | None`  
The page's language, which the API rejects for free unless the host lists it. Without it, `amazon.ae` returns its Arabic page.

`geo_location: str | None`  
A postal code inside the host's country, or an ISO 3166-1 alpha-2 code outside it, which the API rejects for free if it does not fit. `ae`, `com.be`, `eg`, `ie`, `pl`, `sa`, `se` and `sg` run no check, so a wrong value may bill. `99999` on `com` faults after 120 seconds.

`currency: _AmazonCurrency | None`  
The currency of the prices, which the API rejects for free unless the host lists it. On `amazon.com`, any currency but USD raises without a 2-letter country code in `geo_location`, because the API bills prices in USD then.

`user_agent_type: _UserAgentType | None`  
It raises with `render`, because a rendered job ignores it and still bills.
