Проблема с запуском Selenium на AWS Lambda - PullRequest
1 голос
/ 10 мая 2019

В настоящее время я пытаюсь внедрить скребок, который будет проверять два раза в день, изменяют ли определенные PDF-файлы имена.К сожалению, для поиска файлов pdf требуется манипулирование сайтом, поэтому лучшим решением, на мой взгляд, является комбинация Selenium и AWS Lambda.

Для начала я следовал этому учебнику.Я закончил учебник, но столкнулся с этой ошибкой от Lambda:

START RequestId: 18637c6d-ea75-40ee-8789-374654700b99 Version: $LATEST
Starting google.com
Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home
: WebDriverException
Traceback (most recent call last):
  File "/var/task/lambda_function.py", line 46, in lambda_handler
    driver = webdriver.Chrome(chrome_options=chrome_options)
  File "/var/task/selenium/webdriver/chrome/webdriver.py", line 68, in __init__
    self.service.start()
  File "/var/task/selenium/webdriver/common/service.py", line 83, in start
    os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home

Эта ошибка возникла у других и была "исправлена" автором путем ссылки на эту страницу переполнения стека .Я пытался пройти через это, но все ответы касаются использования хрома без головы на рабочем столе, а не AWS лямбда.

Несколько изменений, которые Ive пытался безрезультатно.

1) Изменение chromedriver и headless-chromium на файлы .exe
2) Изменение этой строки кода для включения в файл executetable_path

driver = webdriver.Chrome(chrome_options=chrome_options, executable_path=os.getcwd() + "/bin/chromedriver.exe")

Буду признателен за любую помощь в совместной работе селена и AWS лямбды.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...