【发布时间】:2019-06-27 09:10:54
【问题描述】:
我尝试在 cloud9 和 aws lambda 中使用 python 和 selenium 执行抓取,但是,chromedriver (路径)似乎存在一些问题并且它没有运行。 我的代码是;
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
def lambda_handler(event, context):
options = Options()
options.add_argument('--headless')
path = '/home/ec2-user/environment/testHW/chromedriver.exe'
url = 'https://www.google.com'
driver = webdriver.Chrome(executable_path=path, chrome_options=options)
driver.get(url)
driver.save_screenshot('screenshot.png')
我已经把chromedriver放在了相应的位置。 但是,我收到如下错误消息;
Response
{
"errorMessage": "Message: 'chromedriver.exe' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home\n",
"errorType": "WebDriverException",
"stackTrace": [
[
"/var/task/testHW/lambda_function.py",
11,
"lambda_handler",
"driver = webdriver.Chrome(executable_path=path, chrome_options=options)"
],
[
"/var/task/selenium/webdriver/chrome/webdriver.py",
73,
"__init__",
"self.service.start()"
],
[
"/var/task/selenium/webdriver/common/service.py",
83,
"start",
"os.path.basename(self.path), self.start_error_message)"
]
]
}
Function Logs
Message: 'chromedriver.exe' 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/testHW/lambda_function.py", line 11, in lambda_handler
driver = webdriver.Chrome(executable_path=path, chrome_options=options)
File "/var/task/selenium/webdriver/chrome/webdriver.py", line 73, 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.exe' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home
Request ID
82bcf27f-255e-431d-ae13-6a0efba8d69a
谁能指出问题出在哪里?
【问题讨论】:
标签: python amazon-web-services selenium aws-cloud9