селен.общие.исключения.Исключение WebDriverException: Сообщение: Служба /usr/bin/chromedriver неожиданно завершила работу. Код статуса был: 1

#python #selenium #flask #web #selenium-chromedriver

Вопрос:

Я использую selenium с python и получаю этот код выхода. Запуск от имени root отлично работает с помощью PuTTY, но запуск с использованием os.system в файле flask, запущенном в apache, не работает. Я думаю, это потому, что он работает от имени пользователя www-data[33], но я дал разрешения на выполнение и не могу найти причину, по которой он не должен работать для www-данных[33]. Вот мой код:

 import selenium
from bs4 import BeautifulSoup, NavigableString
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from datetime import date
import sys


today = date.today()
global todaydate
todaydate = today.strftime("%m/%d/%y")
list = []

def getargs(a):
    arg = str(a)
    print(arg)
    list.append(arg)

if __name__ == "__main__":
    getargs((sys.argv[1]))

options = webdriver.ChromeOptions()
options.add_argument("--no-sandbox")
options.add_argument("--headless")
options.add_argument("start-maximized")
options.add_argument("window-size=1900,1080")
options.add_argument("disable-gpu")
options.add_argument("--disable-software-rasterizer")
options.add_argument("--disable-dev-shm-usage")
options.add_argument('user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36 Edg/92.0.902.62')
#driver = webdriver.Chrome(executable_path='/usr/bin/chromedriver', options=options, service_args=["--verbose", "--log-path=test.log"])
driver = webdriver.Chrome(executable_path='/usr/bin/chromedriver', options=options)


for url in URLS:
        driver.get(url)

        innerHTML = driver.page_source
        soup = BeautifulSoup(innerHTML, "html.parser")
        
        iteminfo = []
        for i in soup.select("#ELEMENT):
            global ELEMENT
            ELEMENT= i.text
            print(ELEMENT)