@@ -337,28 +337,44 @@ def SB(
337
337
proxy_string = proxy_string [1 :- 1 ]
338
338
c_a = chromium_arg
339
339
if c_a is None and "--chromium-arg" in arg_join :
340
- if "--chromium-arg=" in arg_join :
341
- c_a = arg_join .split ("--chromium-arg=" )[1 ].split (" " )[0 ]
342
- elif "--chromium-arg " in arg_join :
343
- c_a = arg_join .split ("--chromium-arg " )[1 ].split (" " )[0 ]
344
- if c_a :
345
- if c_a .startswith ('"' ) and c_a .endswith ('"' ):
346
- c_a = c_a [1 :- 1 ]
347
- elif c_a .startswith ("'" ) and c_a .endswith ("'" ):
348
- c_a = c_a [1 :- 1 ]
340
+ count = 0
341
+ for arg in sys_argv :
342
+ if arg .startswith ("--chromium-arg=" ):
343
+ c_a = arg .split ("--chromium-arg=" )[1 ]
344
+ break
345
+ elif arg == "--chromium-arg" and len (sys_argv ) > count + 1 :
346
+ c_a = sys_argv [count + 1 ]
347
+ if c_a .startswith ("-" ):
348
+ c_a = None
349
+ break
350
+ count += 1
349
351
chromium_arg = c_a
350
352
d_f = disable_features
351
353
if d_f is None and "--disable-features" in arg_join :
352
- if "--disable-features=" in arg_join :
353
- d_f = arg_join .split ("--disable-features=" )[1 ].split (" " )[0 ]
354
- elif "--disable-features " in arg_join :
355
- d_f = arg_join .split ("--disable-features " )[1 ].split (" " )[0 ]
356
- if d_f :
357
- if d_f .startswith ('"' ) and d_f .endswith ('"' ):
358
- d_f = d_f [1 :- 1 ]
359
- elif c_a .startswith ("'" ) and d_f .endswith ("'" ):
360
- d_f = d_f [1 :- 1 ]
354
+ count = 0
355
+ for arg in sys_argv :
356
+ if arg .startswith ("--disable-features=" ):
357
+ d_f = arg .split ("--disable-features=" )[1 ]
358
+ break
359
+ elif arg == "--disable-features" and len (sys_argv ) > count + 1 :
360
+ d_f = sys_argv [count + 1 ]
361
+ if d_f .startswith ("-" ):
362
+ d_f = None
363
+ break
364
+ count += 1
361
365
disable_features = d_f
366
+ if agent is None and "--agent" in arg_join :
367
+ count = 0
368
+ for arg in sys_argv :
369
+ if arg .startswith ("--agent=" ):
370
+ agent = arg .split ("--agent=" )[1 ]
371
+ break
372
+ elif arg == "--agent" and len (sys_argv ) > count + 1 :
373
+ agent = sys_argv [count + 1 ]
374
+ if agent .startswith ("-" ):
375
+ agent = None
376
+ break
377
+ count += 1
362
378
user_agent = agent
363
379
recorder_mode = False
364
380
if recorder_ext :
@@ -679,15 +695,30 @@ def SB(
679
695
host_resolver_rules = (
680
696
arg_join .split ("--host_resolver_rules=" )[1 ].split ('"' )[0 ]
681
697
)
682
- if driver_version is None :
683
- if "--driver-version=" in arg_join :
684
- driver_version = (
685
- arg_join .split ("--driver-version=" )[1 ].split (" " )[0 ]
686
- )
687
- elif "--driver_version=" in arg_join :
688
- driver_version = (
689
- arg_join .split ("--driver_version=" )[1 ].split (" " )[0 ]
690
- )
698
+ if driver_version is None and "--driver-version" in arg_join :
699
+ count = 0
700
+ for arg in sys_argv :
701
+ if arg .startswith ("--driver-version=" ):
702
+ driver_version = arg .split ("--driver-version=" )[1 ]
703
+ break
704
+ elif arg == "--driver-version" and len (sys_argv ) > count + 1 :
705
+ driver_version = sys_argv [count + 1 ]
706
+ if driver_version .startswith ("-" ):
707
+ driver_version = None
708
+ break
709
+ count += 1
710
+ if driver_version is None and "--driver_version" in arg_join :
711
+ count = 0
712
+ for arg in sys_argv :
713
+ if arg .startswith ("--driver_version=" ):
714
+ driver_version = arg .split ("--driver_version=" )[1 ]
715
+ break
716
+ elif arg == "--driver_version" and len (sys_argv ) > count + 1 :
717
+ driver_version = sys_argv [count + 1 ]
718
+ if driver_version .startswith ("-" ):
719
+ driver_version = None
720
+ break
721
+ count += 1
691
722
if highlights is not None :
692
723
try :
693
724
highlights = int (highlights )
0 commit comments