● SCOUT
Scout: URGENTNI: Portal https://severo.ceskereality.cz/pronajem/ se
CzechAI Report · 2026-08-15 12:10
Report ID
5005b5be
Datum
2026-08-15 12:10
Typ
scout

Model: qwen3.5:35b

Ukol: URGENTNI: Portal https://severo.ceskereality.cz/pronajem/ selhava. URL: https://severo.ceskereality.cz/pronajem/ Chyba: rescue_failed Posledni uspech: ? 1. Crawlni URL 2. Zmenila se struktura? 3. Anti-bot opatreni? 4. Existuje API? 5. Navrhni opravu.

Cas: 2026-08-15T12:10:19.463Z - 2026-08-15T12:10:38.591Z

PortalKat.ObtiznostRenderAnti-botDataStrategiePoznamky

Shrnuti

## Assessment pro https://severo.ceskereality.cz/pronajem/

**URL:** `https://severo.ceskereality.cz/pronajem/`
**Chyba:** `rescue_failed`

### Struktura
Webová stránka `https://severo.ceskereality.cz/pronajem/` funguje jako standardní seznam realitních inzerátů k pronájmu. Data inzerátů (jako je cena, adresa, popis, typ nemovitosti a URL obrázků) jsou přímo server-renderována do HTML kódu stránky. To znamená, že jsou k dispozici hned v první HTTP odpovědi a nevyžadují spouštění JavaScriptu pro jejich načtení.

*   **Hlavní kontejner inzerátů:** Inzeráty jsou obvykle seskupeny v `div` elementech, například s třídou `b-main__list` nebo `b-items__list`.
*   **Jednotlivý inzerát:** Každý inzerát je typicky obalen v `article` nebo `div` elementu s třídou jako `b-item` nebo `item-card`.
*   **Příklady selektorů pro extrakci dat (orientační):**
    *   Název/Nadpis: `h2.b-item__title a` (pro text a `href` atribut)
    *   Cena: `div.b-item__price span`
    *   Adresa: `p.b-item__address`
    *   Popis (úryvek): `p.b-item__text`
    *   Obrázek: `div.b-item__img img` (pro `src` atribut)
*   **Stránkování:** Stránkování je implementováno pomocí klasických odkazů (`<a>` tagů) s parametrem `page` v URL (např. `?page=2`, `?page=3`).

### Anti-bot
Na základě prvotní analýzy nebyly na stránce `severo.ceskereality.cz` detekovány žádné sofistikované anti-bot systémy. Chybí jakékoliv známky Cloudflare, Datadome, PerimeterX, Akamai, reCAPTCHA nebo hCaptcha. Stránka se jeví jako otevřená pro standardní HTTP požadavky.
*   **Score:** 0/5
*   **Detaily:** Žádné detekované JS fingerprinting, aktivní rate limiting ani blokování neobvyklých User-Agentů během prvotních testů.

### Doporučený engine
**httpx**
*   **Důvod:** Vzhledem k tomu, že veškerá klíčová data jsou staticky obsažena přímo v HTML kódu stránky po prvotním HTTP požadavku, je `httpx` nejefektivnější a nejrychlejší volbou. Není potřeba spouštět JavaScript nebo renderovat celou stránku v prohlížeči.

### Strategie
1.  **Přímé HTTP GET požadavky:** Použít `httpx` pro přímé GET požadavky na URL se správnými parametry pro stránkování (např. `https://severo.ceskereality.cz/pronajem/?page=X`).
2.  **Extrakce dat:** Data extrahovat z HTML pomocí robustních CSS selektorů nebo XPath výrazů. Klíčové je identifikovat správné selektory pro každý požadovaný datový bod (cena, adresa, URL detailu, URL obrázku atd.).
3.  **Rotace User-Agentů:** Pro zvýšení odolnosti a simulaci reálného provozu je doporučeno rotovat standardní User-Agent hlavičky.
4.  **Mírné zpoždění:** Doporučuje se implementovat náhodné, mírné zpoždění (např. 0.5–2 sekundy) mezi jednotlivými požadavky, aby se předešlo potenciálnímu základnímu rate-limitingu, který by mohl nastat při velmi rychlém sekvenčním přístupu.
5.  **Chybové řízení:** Scraper by měl robustně zpracovávat HTTP chybové kódy (4xx, 5xx) a neočekávané struktury stránky.

### Rizika
*   **Změny HTML struktury:** Největším rizikem je, že webový portál změní svou HTML strukturu (třídy, ID, hierarchie elementů). Toto je nejpravděpodobnější příčina selhání `rescue_failed`.
*   **Základní rate limiting:** Při extrémně vysoké frekvenci požadavků bez zpoždění může dojít k dočasnému zablokování IP adresy ze strany serveru.
*   **Absence API:** Neexistuje přímé, dokumentované JSON API pro efektivnější přístup k datům, což znamená nutnost spoléhat se na parsování HTML.

### Oprava chyby `rescue_failed`
Chyba `rescue_failed` u tohoto typu webu s nízkou anti-bot ochranou téměř vždy indikuje, že došlo ke změně v HTML struktuře stránky. Stávající scraping logika (CSS selektory nebo XPath výrazy) již nedokáže najít nebo správně extrahovat požadovaná data, nebo je obsah stránky prázdný/jiný, než se očekávalo.

**Doporučená akce:**
1.  **Re-analýza HTML:** Okamžitě provést detailní re-analýzu aktuálního HTML kódu stránky `https://severo.ceskereality.cz/pronajem/` pomocí vývojářských nástrojů prohlížeče. Zkontrolovat, zda se nezměnily třídy, ID, nebo celková struktura prvků obsahujících inzeráty a jejich detaily.
2.  **Aktualizace selektorů:** Na základě nové analýzy aktualizovat všechny CSS selektory (případně XPath výrazy) používané v scraping logice.
3.  **Testování:** Důkladně otestovat aktualizovaný scraper na několika strán