You've already forked pruchase_jhw
适配common-0.3.0
This commit is contained in:
+8
-18
@@ -4,6 +4,7 @@ from pathlib import Path
|
||||
from typing import Dict
|
||||
from playwright.async_api import async_playwright, Playwright, BrowserContext
|
||||
from loguru import logger
|
||||
from surugaya_common.browser_profile import DEFAULT_USER_AGENT, LOCALE, TIMEZONE_ID, stealth_launch_args
|
||||
from src.config.settings import get_settings
|
||||
from src.config.accounts import AccountConfig, load_accounts_config
|
||||
|
||||
@@ -239,17 +240,9 @@ class BrowserManager:
|
||||
logger.error(f"创建账号 '{account.account_id}' 的持久化目录失败: {e}")
|
||||
raise e
|
||||
|
||||
# 2. 配置隐身 Chromium 启动参数
|
||||
chrome_args = [
|
||||
"--disable-blink-features=AutomationControlled", # 浏览器层面移除 navigator.webdriver
|
||||
"--disable-infobars", # 隐藏「Chrome 正受到自动测试软件控制」提示条
|
||||
"--no-sandbox", # Docker/服务器环境兼容
|
||||
"--disable-setuid-sandbox",
|
||||
"--disable-dev-shm-usage", # 内存受限环境避免资源崩溃
|
||||
"--start-maximized", # 启动时全屏(最大化)
|
||||
"--disable-gpu", # 服务器无头模式稳定渲染
|
||||
"--use-mock-keychain", # 避免本地密钥环弹窗(macOS/Linux)
|
||||
"--password-store=basic",
|
||||
# 2. 配置隐身 Chromium 启动参数(共享反检测参数 + 本进程追加项)
|
||||
chrome_args = stealth_launch_args() + [
|
||||
"--start-maximized", # 启动时全屏(最大化)
|
||||
]
|
||||
|
||||
executable_path_raw = self.settings.browser_executable_path
|
||||
@@ -265,11 +258,8 @@ class BrowserManager:
|
||||
)
|
||||
headless_mode = self.settings.browser_headless
|
||||
|
||||
# 使用较新的 Windows Chrome User-Agent
|
||||
user_agent = (
|
||||
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 "
|
||||
"(KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
|
||||
)
|
||||
# 使用与 API 服务一致的 Windows Chrome User-Agent(共享指纹配置)
|
||||
user_agent = DEFAULT_USER_AGENT
|
||||
|
||||
logger.info(f"正在为账号 {account.account_id} 启动 Playwright | 无头模式: {headless_mode}")
|
||||
|
||||
@@ -289,8 +279,8 @@ class BrowserManager:
|
||||
"args": chrome_args,
|
||||
"user_agent": user_agent,
|
||||
"no_viewport": True, # 配合 --start-maximized 使得网页视口也铺满全屏
|
||||
"locale": "ja-JP", # 区域语言一致
|
||||
"timezone_id": "Asia/Tokyo", # 日本本地时区
|
||||
"locale": LOCALE, # 区域语言一致(ja-JP)
|
||||
"timezone_id": TIMEZONE_ID, # 日本本地时区(Asia/Tokyo)
|
||||
"accept_downloads": True, # 允许自动下载(如需要)
|
||||
"proxy": proxy_config # 住宅代理等
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user