from playwright.sync_api import sync_playwright import time def run(): with sync_playwright() as p: try: browser = p.chromium.connect_over_cdp('http://127.0.0.1:9222') page = browser.contexts[0].pages[0] print(f'Currently at: {page.url}') # Скроллим вниз, чтобы кнопка стала видимой/активной page.evaluate('window.scrollTo(0, document.body.scrollHeight)') time.sleep(2) # Ищем кнопку по тексту btn = page.get_by_text('Скачать все').first if btn.is_visible(): print('Download button found! Clicking...') with page.expect_download(timeout=120000) as download_info: btn.click() download = download_info.value path = f'/app/downloads/harvested_appeal_73-2026-14124.zip' download.save_as(path) print(f'SUCCESS: Saved to {path}') else: print('Download button NOT VISIBLE. Dumping text...') print(page.content()[-2000:]) # Дампим конец страницы browser.close() except Exception as e: print(f'ERROR: {e}') if __name__ == '__main__': run()