26 lines
877 B
Python
26 lines
877 B
Python
import socket
|
|
import random
|
|
from DrissionPage import Chromium, ChromiumOptions
|
|
|
|
def getBrowsers(chrome_zoom = 1.0, save_path: str = "") -> Chromium:
|
|
while True:
|
|
port = random.randint(9000, 65535)
|
|
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
|
|
if s.connect_ex(('127.0.0.1', port)) != 10061:
|
|
continue
|
|
break
|
|
|
|
if save_path:
|
|
options = ChromiumOptions().set_local_port(port).set_user_data_path(save_path)
|
|
else:
|
|
options = ChromiumOptions().auto_port()
|
|
options = options.set_argument('--force-device-scale-factor', str(chrome_zoom))
|
|
# options = options.set_user_agent('Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)')
|
|
while True:
|
|
try:
|
|
browser = Chromium(options)
|
|
break
|
|
except:
|
|
pass
|
|
return browser
|