Merge pull request 'fix(browser): bump fetch wait 2500→6000ms so avito listings hydrate (#905) — migration proven' (#912) from fix/905-browser-wait-ms into main
All checks were successful
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Successful in 33s
Deploy Trade-In / build-backend (push) Successful in 47s
Deploy Trade-In / build-browser (push) Successful in 2m11s
Deploy Trade-In / deploy (push) Successful in 58s
All checks were successful
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Successful in 33s
Deploy Trade-In / build-backend (push) Successful in 47s
Deploy Trade-In / build-browser (push) Successful in 2m11s
Deploy Trade-In / deploy (push) Successful in 58s
Reviewed-on: #912
This commit is contained in:
commit
9d357f0cc4
2 changed files with 6 additions and 3 deletions
|
|
@ -225,7 +225,7 @@ class Settings(BaseSettings):
|
||||||
browser_nav_timeout_ms: int = 60000
|
browser_nav_timeout_ms: int = 60000
|
||||||
# Ожидание после DOMContentLoaded для JS-гидрации в мс. Читается сервером.
|
# Ожидание после DOMContentLoaded для JS-гидрации в мс. Читается сервером.
|
||||||
# ENV: BROWSER_WAIT_MS.
|
# ENV: BROWSER_WAIT_MS.
|
||||||
browser_wait_ms: int = 2500
|
browser_wait_ms: int = 6000
|
||||||
|
|
||||||
|
|
||||||
settings = Settings()
|
settings = Settings()
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ WS-сервер) несовместим с современными версия
|
||||||
BROWSER_PORT — TCP-порт HTTP-сервера (default: 3000)
|
BROWSER_PORT — TCP-порт HTTP-сервера (default: 3000)
|
||||||
BROWSER_RECYCLE_PAGES — страниц в одном сеансе браузера до перезапуска (default: 15)
|
BROWSER_RECYCLE_PAGES — страниц в одном сеансе браузера до перезапуска (default: 15)
|
||||||
BROWSER_NAV_TIMEOUT_MS — таймаут page.goto в мс (default: 60000)
|
BROWSER_NAV_TIMEOUT_MS — таймаут page.goto в мс (default: 60000)
|
||||||
BROWSER_WAIT_MS — ожидание после DOMContentLoaded в мс (default: 2500)
|
BROWSER_WAIT_MS — ожидание гидрации listings после DOMContentLoaded, мс (default: 6000)
|
||||||
AVITO_PROXY_URL — прокси ``http://user:pass@host:port`` (mobileproxy, #623);
|
AVITO_PROXY_URL — прокси ``http://user:pass@host:port`` (mobileproxy, #623);
|
||||||
SCRAPER_PROXY_URL — generic-fallback. Без него — soft-block.
|
SCRAPER_PROXY_URL — generic-fallback. Без него — soft-block.
|
||||||
|
|
||||||
|
|
@ -39,7 +39,10 @@ logger = logging.getLogger(__name__)
|
||||||
BROWSER_PORT: int = int(os.environ.get("BROWSER_PORT", "3000"))
|
BROWSER_PORT: int = int(os.environ.get("BROWSER_PORT", "3000"))
|
||||||
BROWSER_RECYCLE_PAGES: int = int(os.environ.get("BROWSER_RECYCLE_PAGES", "15"))
|
BROWSER_RECYCLE_PAGES: int = int(os.environ.get("BROWSER_RECYCLE_PAGES", "15"))
|
||||||
BROWSER_NAV_TIMEOUT_MS: int = int(os.environ.get("BROWSER_NAV_TIMEOUT_MS", "60000"))
|
BROWSER_NAV_TIMEOUT_MS: int = int(os.environ.get("BROWSER_NAV_TIMEOUT_MS", "60000"))
|
||||||
BROWSER_WAIT_MS: int = int(os.environ.get("BROWSER_WAIT_MS", "2500"))
|
# 6000 (не 2500): avito гидрирует listings client-side ПОСЛЕ domcontentloaded;
|
||||||
|
# на 2.5с в HTML генерик-шелл без объявлений (0 listings), на 5-6с — полная
|
||||||
|
# выдача (~50 карточек, 3.2МБ). Подтверждено прод-дебагом 2026-05-31.
|
||||||
|
BROWSER_WAIT_MS: int = int(os.environ.get("BROWSER_WAIT_MS", "6000"))
|
||||||
# Прокси: основной источник — AVITO_PROXY_URL (mobileproxy, #623, лежит в
|
# Прокси: основной источник — AVITO_PROXY_URL (mobileproxy, #623, лежит в
|
||||||
# backend/.env.runtime, тот же что у curl_cffi-avito). SCRAPER_PROXY_URL —
|
# backend/.env.runtime, тот же что у curl_cffi-avito). SCRAPER_PROXY_URL —
|
||||||
# опциональный generic-fallback на будущее (cian/yandex). Без прокси camoufox
|
# опциональный generic-fallback на будущее (cian/yandex). Без прокси camoufox
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue