Есть рабочий проест на selenium с ChromeDriver.
Столкнулся с проблемой производительности при масштабировании.
При 20 и более экземпляров браузера Load average поднимается до 15-20.
Вот эти настройки немного исправили ситуацию,
class Browser(validator.CategoryManager):
def __init__(self, user_id, account_id):
URL = ''
CHROME_DRIVER_PATH = 'driver/chromedriver'
options = ChromeOptions()
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
options.add_argument('--disable-gpu')
options.add_argument('--disable-application-cache')
options.add_argument('--ignore-certificate-errors')
options.add_argument('--blink-settings=imagesEnabled=false')
#options.add_argument('user-agent={0}'.format('MQQBrowser/26 Mozilla/5.0 (Linux; U; Android 2.3.7; zh-cn; MB200 Build/GRJ22; CyanogenMod-7) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'))
options.add_experimental_option("excludeSwitches", ["enable-automation", "enable-logging"])
options.add_experimental_option('useAutomationExtension', False)
options.add_argument("--disable-blink-features=AutomationControlled")
Подгрузка аккаунта происходит через загрузку cookie(Для экономии места), далее крутится скрипт с валидацией, который выполняет N-ную работу на сайте.
Уже не знаю что можно отключить, что бы повысить производительность.
Докупать железо не хотелось бы, пользуюсь yandex cloud, 24gb ram, 6vCPU