使用Python和3 aiohttp查找超时后重定向后的URL

lon*_*ver 4 python redirect aiohttp

我目前正在尝试审核大量重定向 URL 句柄,以确保它们的目的地仍然有效。

我正在使用 aiohttp 来浏览大量数据以生成报告。

try:
    with aiohttp.Timeout(timeout):
        async with session.get(url) as resp:
            return {"Handle URL": url,
                    "Status Code": resp.status,
                    "Redirects": resp.url != url,
                    "Resolving URL": resp.url,
                    "Success": resp.status == 200,
                    "Message": ""}
except asyncio.TimeoutError:
        return {"Handle URL": url,
                "Success": False,
                "Message": "Handle server timed out. >{} seconds".format(timeout)}
Run Code Online (Sandbox Code Playgroud)

在大多数情况下,这可以很好地识别哪个 URL 重定向不再发送到有效的 URL。但是,我真的很想知道超时的最终地址。

有任何想法吗?

And*_*lov 6

唯一的方法是禁用重定向allow_redirects=False并手动执行重定向。