Update Gemini.py

pull/1802/head
H Lohaus 2 months ago committed by GitHub
parent 1baca306c4
commit 674ba8f2c5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -19,6 +19,7 @@ except ImportError:
from ...typing import Messages, Cookies, ImageType, AsyncResult
from ..base_provider import AsyncGeneratorProvider
from ..helper import format_prompt, get_cookies
from requests.raise_for_status import raise_for_status
from ...errors import MissingAuthError, MissingRequirementsError
from ...image import to_bytes, ImageResponse
from ...webdriver import get_browser, get_driver_cookies
@ -128,6 +129,7 @@ class Gemini(AsyncGeneratorProvider):
data=data,
params=params,
) as response:
await raise_for_status(response)
response = await response.text()
response_part = json.loads(json.loads(response.splitlines()[-5])[0][2])
if response_part[4] is None:
@ -185,7 +187,7 @@ class Gemini(AsyncGeneratorProvider):
connector=connector
) as session:
async with session.options(UPLOAD_IMAGE_URL) as reponse:
reponse.raise_for_status()
await raise_for_status(response)
headers = {
"size": str(len(image)),
@ -195,23 +197,24 @@ class Gemini(AsyncGeneratorProvider):
async with session.post(
UPLOAD_IMAGE_URL, headers=headers, data=data
) as response:
response.raise_for_status()
await raise_for_status(response)
upload_url = response.headers["X-Goog-Upload-Url"]
async with session.options(upload_url, headers=headers) as response:
response.raise_for_status()
await raise_for_status(response)
headers["x-goog-upload-command"] = "upload, finalize"
headers["X-Goog-Upload-Offset"] = "0"
async with session.post(
upload_url, headers=headers, data=image
) as response:
response.raise_for_status()
await raise_for_status(response)
return await response.text()
@classmethod
async def fetch_snlm0e(cls, session: ClientSession, cookies: Cookies):
async with session.get(cls.url, cookies=cookies) as response:
await raise_for_status(response)
text = await response.text()
match = re.search(r'SNlM0e\":\"(.*?)\"', text)
if match:

Loading…
Cancel
Save