mirror of
https://github.com/PaiGramTeam/PaiGram.git
synced 2024-11-26 02:11:03 +00:00
🐛 Fix post timeout error
This commit is contained in:
parent
6efddb364a
commit
d51e5c64cc
@ -6,10 +6,20 @@ import httpx
|
|||||||
|
|
||||||
__all__ = ("HTTPXRequest",)
|
__all__ = ("HTTPXRequest",)
|
||||||
|
|
||||||
|
from core.config import config
|
||||||
|
|
||||||
|
timeout = httpx.Timeout(
|
||||||
|
timeout=config.timeout,
|
||||||
|
read=config.read_timeout,
|
||||||
|
write=config.write_timeout,
|
||||||
|
connect=config.connect_timeout,
|
||||||
|
pool=config.pool_timeout,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class HTTPXRequest(AbstractAsyncContextManager):
|
class HTTPXRequest(AbstractAsyncContextManager):
|
||||||
def __init__(self, *args, headers=None, **kwargs):
|
def __init__(self, *args, headers=None, **kwargs):
|
||||||
self._client = httpx.AsyncClient(headers=headers, *args, **kwargs)
|
self._client = httpx.AsyncClient(headers=headers, timeout=timeout, *args, **kwargs)
|
||||||
|
|
||||||
async def __aenter__(self):
|
async def __aenter__(self):
|
||||||
try:
|
try:
|
||||||
@ -26,7 +36,7 @@ class HTTPXRequest(AbstractAsyncContextManager):
|
|||||||
|
|
||||||
async def initialize(self):
|
async def initialize(self):
|
||||||
if self._client.is_closed:
|
if self._client.is_closed:
|
||||||
self._client = httpx.AsyncClient()
|
self._client = httpx.AsyncClient(timeout=timeout)
|
||||||
|
|
||||||
async def shutdown(self):
|
async def shutdown(self):
|
||||||
if self._client.is_closed:
|
if self._client.is_closed:
|
||||||
|
@ -123,7 +123,7 @@ class Hyperion:
|
|||||||
_, file_extension = os.path.splitext(filename)
|
_, file_extension = os.path.splitext(filename)
|
||||||
is_image = bool(file_extension in ".jpg" or file_extension in ".png")
|
is_image = bool(file_extension in ".jpg" or file_extension in ".png")
|
||||||
response = await self.client.get(
|
response = await self.client.get(
|
||||||
url, params=self.get_images_params(resize=2000) if is_image else None, timeout=10, de_json=False
|
url, params=self.get_images_params(resize=2000) if is_image else None, de_json=False
|
||||||
)
|
)
|
||||||
return ArtworkImage(
|
return ArtworkImage(
|
||||||
art_id=art_id, page=page, file_name=filename, file_extension=url.split(".")[-1], data=response.content
|
art_id=art_id, page=page, file_name=filename, file_extension=url.split(".")[-1], data=response.content
|
||||||
|
Loading…
Reference in New Issue
Block a user