feat patch
This commit is contained in:
@@ -20,6 +20,29 @@ from services.socks5_to_http_proxy import Socks5ProxyPool
|
|||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
def _patch_camoufox():
|
||||||
|
"""Патчит generate_fingerprint чтобы убирать лишние constraints при ошибке."""
|
||||||
|
import camoufox.fingerprints as _fp
|
||||||
|
_orig = _fp.generate_fingerprint
|
||||||
|
|
||||||
|
def _patched(**config):
|
||||||
|
try:
|
||||||
|
return _orig(**config)
|
||||||
|
except ValueError:
|
||||||
|
# Убираем screen — он чаще всего вызывает конфликт с locale
|
||||||
|
config.pop("screen", None)
|
||||||
|
try:
|
||||||
|
return _orig(**config)
|
||||||
|
except ValueError:
|
||||||
|
# Оставляем только locale без остальных ограничений
|
||||||
|
minimal = {k: v for k, v in config.items() if k == "locale"}
|
||||||
|
return _orig(**minimal)
|
||||||
|
|
||||||
|
_fp.generate_fingerprint = _patched
|
||||||
|
|
||||||
|
_patch_camoufox()
|
||||||
|
|
||||||
|
|
||||||
def _locale_for_ip(ip: str) -> str:
|
def _locale_for_ip(ip: str) -> str:
|
||||||
"""Возвращает BCP47 locale без script-тега по реальному IP прокси."""
|
"""Возвращает BCP47 locale без script-тега по реальному IP прокси."""
|
||||||
try:
|
try:
|
||||||
|
|||||||
Reference in New Issue
Block a user