mirror of
https://github.com/A-Minos/nonebot-plugin-tetris-stats.git
synced 2026-03-05 05:36:54 +08:00
✨ 为截图添加自动重试
This commit is contained in:
@@ -1,11 +1,15 @@
|
|||||||
|
from playwright.async_api import TimeoutError
|
||||||
|
|
||||||
from .browser import BrowserManager
|
from .browser import BrowserManager
|
||||||
|
from .retry import retry
|
||||||
|
|
||||||
|
|
||||||
|
@retry(exception_type=TimeoutError, reply='截图失败, 重试中')
|
||||||
async def screenshot(url: str) -> bytes:
|
async def screenshot(url: str) -> bytes:
|
||||||
browser = await BrowserManager.get_browser()
|
browser = await BrowserManager.get_browser()
|
||||||
async with (
|
async with (
|
||||||
await browser.new_page(no_viewport=True, viewport={'width': 0, 'height': 0}) as page,
|
await browser.new_page(no_viewport=True, viewport={'width': 0, 'height': 0}) as page,
|
||||||
):
|
):
|
||||||
await page.goto(url)
|
await page.goto(url)
|
||||||
await page.wait_for_load_state('networkidle')
|
await page.wait_for_load_state('networkidle', timeout=5000)
|
||||||
return await page.screenshot(full_page=True, type='png')
|
return await page.screenshot(timeout=5000, full_page=True, type='png')
|
||||||
|
|||||||
Reference in New Issue
Block a user