xiaoh2018 commited on
Commit
dc01849
·
verified ·
1 Parent(s): 6779a70

Upload main.py

Browse files
Files changed (1) hide show
  1. src/main.py +49 -7
src/main.py CHANGED
@@ -75,14 +75,56 @@ async def lifespan(app: FastAPI):
75
  # Initialize browser captcha service if needed
76
  browser_service = None
77
  if captcha_config.captcha_method == "personal":
78
- from .services.browser_captcha_personal import BrowserCaptchaService
79
- browser_service = await BrowserCaptchaService.get_instance(db)
80
- await browser_service.open_login_window()
81
- print("✓ Browser captcha service initialized (webui mode)")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
82
  elif captcha_config.captcha_method == "browser":
83
- from .services.browser_captcha import BrowserCaptchaService
84
- browser_service = await BrowserCaptchaService.get_instance(db)
85
- print("✓ Browser captcha service initialized (headless mode)")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
86
 
87
  # Initialize concurrency manager
88
  tokens = await token_manager.get_all_tokens()
 
75
  # Initialize browser captcha service if needed
76
  browser_service = None
77
  if captcha_config.captcha_method == "personal":
78
+ try:
79
+ from .services.browser_captcha_personal import PLAYWRIGHT_AVAILABLE
80
+ if PLAYWRIGHT_AVAILABLE:
81
+ from .services.browser_captcha_personal import BrowserCaptchaService
82
+ browser_service = await BrowserCaptchaService.get_instance(db)
83
+ await browser_service.open_login_window()
84
+ print("✓ Browser captcha service initialized (webui mode)")
85
+ else:
86
+ print("⚠️ Playwright not available. Please use YesCaptcha service instead.")
87
+ # 自动切换到 yescaptcha 方法
88
+ await db.update_captcha_config(
89
+ captcha_method="yescaptcha",
90
+ yescaptcha_api_key=captcha_config.yescaptcha_api_key,
91
+ yescaptcha_base_url=captcha_config.yescaptcha_base_url
92
+ )
93
+ print("✓ Captcha method automatically switched to yescaptcha")
94
+ except ImportError:
95
+ print("⚠️ Playwright not available. Please use YesCaptcha service instead.")
96
+ # 自动切换到 yescaptcha 方法
97
+ await db.update_captcha_config(
98
+ captcha_method="yescaptcha",
99
+ yescaptcha_api_key=captcha_config.yescaptcha_api_key,
100
+ yescaptcha_base_url=captcha_config.yescaptcha_base_url
101
+ )
102
+ print("✓ Captcha method automatically switched to yescaptcha")
103
  elif captcha_config.captcha_method == "browser":
104
+ try:
105
+ from .services.browser_captcha import PLAYWRIGHT_AVAILABLE
106
+ if PLAYWRIGHT_AVAILABLE:
107
+ from .services.browser_captcha import BrowserCaptchaService
108
+ browser_service = await BrowserCaptchaService.get_instance(db)
109
+ print("✓ Browser captcha service initialized (headless mode)")
110
+ else:
111
+ print("⚠️ Playwright not available. Please use YesCaptcha service instead.")
112
+ # 自动切换到 yescaptcha 方法
113
+ await db.update_captcha_config(
114
+ captcha_method="yescaptcha",
115
+ yescaptcha_api_key=captcha_config.yescaptcha_api_key,
116
+ yescaptcha_base_url=captcha_config.yescaptcha_base_url
117
+ )
118
+ print("✓ Captcha method automatically switched to yescaptcha")
119
+ except ImportError:
120
+ print("⚠️ Playwright not available. Please use YesCaptcha service instead.")
121
+ # 自动切换到 yescaptcha 方法
122
+ await db.update_captcha_config(
123
+ captcha_method="yescaptcha",
124
+ yescaptcha_api_key=captcha_config.yescaptcha_api_key,
125
+ yescaptcha_base_url=captcha_config.yescaptcha_base_url
126
+ )
127
+ print("✓ Captcha method automatically switched to yescaptcha")
128
 
129
  # Initialize concurrency manager
130
  tokens = await token_manager.get_all_tokens()