返回提交历史
Modified
g4f/cookies.py
+1
-0
Modified
g4f/requests/__init__.py
+18
-1
XFEstudio/gpt4free
Add --cookie-browsers argument to cli
27540437
代码差异
2 个文件
+19
-1
@@ -40,6 +40,7 @@ try:
40
40
has_browser_cookie3 = True
41
41
except ImportError:
42
42
has_browser_cookie3 = False
43
browsers = []
43
44
44
45
from .typing import Dict, Cookies
45
46
from .errors import MissingRequirementsError
@@ -20,9 +20,15 @@ except ImportError:
20
20
try:
21
21
import nodriver
22
22
from nodriver.cdp.network import CookieParam
23
from nodriver import Browser
23
24
has_nodriver = True
24
25
except ImportError:
25
26
has_nodriver = False
27
try:
28
from platformdirs import user_config_dir
29
has_platformdirs = True
30
except ImportError:
31
has_platformdirs = False
26
32
27
33
from .. import debug
28
34
from .raise_for_status import raise_for_status
@@ -165,4 +171,15 @@ def merge_cookies(cookies: Iterator[Morsel], response: Response) -> Cookies:
165
171
if cookies is None:
166
172
cookies = {}
167
173
for cookie in response.cookies.jar:
168
cookies[cookie.name] = cookie.value
174
cookies[cookie.name] = cookie.value
175
176
async def get_nodriver(proxy: str = None, **kwargs)-> Browser:
177
if not has_nodriver:
178
raise MissingRequirementsError('Install "nodriver" package | pip install -U nodriver')
179
user_data_dir = user_config_dir("g4f-nodriver") if has_platformdirs else None
180
debug.log(f"Copilot: Open nodriver with user_dir: {user_data_dir}")
181
return await nodriver.start(
182
user_data_dir=user_data_dir,
183
browser_args=None if proxy is None else [f"--proxy-server={proxy}"],
184
**kwargs
185
)