Update nb4x.py
Browse files
nb4x.py
CHANGED
|
@@ -322,23 +322,34 @@ def registration_process(driver, wait):
|
|
| 322 |
|
| 323 |
def single_registration():
|
| 324 |
chrome_options = Options()
|
|
|
|
|
|
|
| 325 |
chrome_options.add_argument('--no-sandbox')
|
| 326 |
chrome_options.add_argument('--disable-dev-shm-usage')
|
| 327 |
chrome_options.add_argument('--disable-gpu')
|
| 328 |
chrome_options.add_argument('--headless=new')
|
| 329 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 330 |
# 添加代理设置
|
| 331 |
proxy = "http://yvighdwv-1:a5fyzm76khsv@p.webshare.io:80"
|
| 332 |
chrome_options.add_argument(f'--proxy-server={proxy}')
|
| 333 |
|
| 334 |
try:
|
| 335 |
-
#
|
|
|
|
| 336 |
service = Service('/usr/bin/chromedriver')
|
| 337 |
-
driver = webdriver.Chrome(service=service, options=chrome_options)
|
| 338 |
|
| 339 |
-
#
|
| 340 |
-
logger.info(
|
| 341 |
-
|
|
|
|
| 342 |
|
| 343 |
wait = WebDriverWait(driver, 20)
|
| 344 |
success = registration_process(driver, wait)
|
|
@@ -350,6 +361,8 @@ def single_registration():
|
|
| 350 |
return success
|
| 351 |
except Exception as e:
|
| 352 |
logger.error(f"注册过程发生错误: {str(e)}")
|
|
|
|
|
|
|
| 353 |
return False
|
| 354 |
finally:
|
| 355 |
try:
|
|
@@ -389,7 +402,7 @@ def main():
|
|
| 389 |
try:
|
| 390 |
# 设置固定的并发数为3
|
| 391 |
concurrent_num = 3
|
| 392 |
-
logger.info(f"启动 {concurrent_num}
|
| 393 |
|
| 394 |
# 创建线程池
|
| 395 |
with ThreadPoolExecutor(max_workers=concurrent_num) as executor:
|
|
|
|
| 322 |
|
| 323 |
def single_registration():
|
| 324 |
chrome_options = Options()
|
| 325 |
+
|
| 326 |
+
# 基本设置
|
| 327 |
chrome_options.add_argument('--no-sandbox')
|
| 328 |
chrome_options.add_argument('--disable-dev-shm-usage')
|
| 329 |
chrome_options.add_argument('--disable-gpu')
|
| 330 |
chrome_options.add_argument('--headless=new')
|
| 331 |
|
| 332 |
+
# 添加必要的参数来解决 DevToolsActivePort 问题
|
| 333 |
+
chrome_options.add_argument('--disable-software-rasterizer')
|
| 334 |
+
chrome_options.add_argument('--disable-extensions')
|
| 335 |
+
chrome_options.add_argument('--disable-dev-tools')
|
| 336 |
+
chrome_options.add_argument('--remote-debugging-port=9222') # 指定调试端口
|
| 337 |
+
chrome_options.add_argument('--no-zygote') # 禁用 zygote 进程
|
| 338 |
+
chrome_options.add_argument('--single-process') # 使用单进程模式
|
| 339 |
+
|
| 340 |
# 添加代理设置
|
| 341 |
proxy = "http://yvighdwv-1:a5fyzm76khsv@p.webshare.io:80"
|
| 342 |
chrome_options.add_argument(f'--proxy-server={proxy}')
|
| 343 |
|
| 344 |
try:
|
| 345 |
+
# 指定 Chrome 和 ChromeDriver 路径
|
| 346 |
+
chrome_options.binary_location = "/usr/bin/chromium"
|
| 347 |
service = Service('/usr/bin/chromedriver')
|
|
|
|
| 348 |
|
| 349 |
+
# 添加调试日志
|
| 350 |
+
logger.info("正在启动 Chrome...")
|
| 351 |
+
driver = webdriver.Chrome(service=service, options=chrome_options)
|
| 352 |
+
logger.info("Chrome 启动成功")
|
| 353 |
|
| 354 |
wait = WebDriverWait(driver, 20)
|
| 355 |
success = registration_process(driver, wait)
|
|
|
|
| 361 |
return success
|
| 362 |
except Exception as e:
|
| 363 |
logger.error(f"注册过程发生错误: {str(e)}")
|
| 364 |
+
logger.error(f"错误类型: {type(e)}")
|
| 365 |
+
logger.error(f"错误详情: {str(e)}")
|
| 366 |
return False
|
| 367 |
finally:
|
| 368 |
try:
|
|
|
|
| 402 |
try:
|
| 403 |
# 设置固定的并发数为3
|
| 404 |
concurrent_num = 3
|
| 405 |
+
logger.info(f"启动 {concurrent_num} 个并发线���")
|
| 406 |
|
| 407 |
# 创建线程池
|
| 408 |
with ThreadPoolExecutor(max_workers=concurrent_num) as executor:
|