実現したいこと
本日昼頃まで動いていたスクレイピングを復活させたいです
下にエラーの文言を貼っております。
これを見ると、Chrome が正しく入っていない・・様に見えます・・が
午前中は動いており、何の変更も行なっておりません
chrome を直接起動させてみると、エラーが出ます
ドライバーは動いているかと思います
下の方に詳細ログを記載してますが、chrome の読込場所が違うのでは??
.cache/以下・・を見てないのでは??
デバック手順 ◾️①[コンソール1]直接 driver を立ち上げると起動する ◾️②[コンソール2]書きスクリプト起動 ◾️③[コンソール2]エラー ◾️④[コンソール1] Browser search. Trying... /bin/chrome Browser search. Trying... /opt/google/chrome/chrome Browser search. Found at /opt/google/chrome/chrome <--- このchrome を見てる?
似たような経験をされた方、
またはここが怪し??と思い当たる箇所がありましたら
ご教授いただけますでしょうか?
◾️ 環境
OS : aws Linux2
Python : 3.11.5
selenium : 4.26.1
◾️ chrome & driver
.cache/selenium/chrome/linux64/120.0.6099.109/chrome
.cache/selenium/chromedriver/linux64/120.0.6099.109/chromedriver
◾️ ドライバーはダウンロードしてません
バージョンを指定する事で、自動でchrome のバージョンに合った
ドライバーをインストールするようにしてます
options.set_capability('browserVersion', '120')
発生している問題・分からないこと
chrome が無い・・とエラーメッセージでは言ってます
しかし、入っていると思います
chromedriver not found in PATH
エラーメッセージ
error
1DEBUG:selenium.webdriver.common.selenium_manager:Selenium Manager binary found at: /home/⚫️⚫️⚫️/.pyenv/versions/3.11.5/lib/python3.11/site-packages/selenium/webdriver/common/linux/selenium-manager 2DEBUG:selenium.webdriver.common.selenium_manager:Executing process: /home/⚫️⚫️⚫️/.pyenv/versions/3.11.5/lib/python3.11/site-packages/selenium/webdriver/common/linux/selenium-manager --browser chrome --browser-version 120 --debug --language-binding python --output json 3DEBUG:selenium.webdriver.common.selenium_manager:chromedriver not found in PATH 4DEBUG:selenium.webdriver.common.selenium_manager:chrome detected at /usr/bin/google-chrome 5DEBUG:selenium.webdriver.common.selenium_manager:Running command: /usr/bin/google-chrome --version 6DEBUG:selenium.webdriver.common.selenium_manager:Output: "" 7DEBUG:selenium.webdriver.common.selenium_manager:Running command: "/usr/bin/google-chrome" --version 8DEBUG:selenium.webdriver.common.selenium_manager:Output: "" 9DEBUG:selenium.webdriver.common.selenium_manager:Running command: '/usr/bin/google-chrome' --version 10DEBUG:selenium.webdriver.common.selenium_manager:Output: "" 11DEBUG:selenium.webdriver.common.selenium_manager:Running command: /usr/bin/google-chrome --version 12DEBUG:selenium.webdriver.common.selenium_manager:Output: "" 13DEBUG:selenium.webdriver.common.selenium_manager:chrome 120 not found in the system 14DEBUG:selenium.webdriver.common.selenium_manager:Required browser: chrome 120.0.6099.109 15DEBUG:selenium.webdriver.common.selenium_manager:chrome 120.0.6099.109 already exists 16DEBUG:selenium.webdriver.common.selenium_manager:chrome 120.0.6099.109 is available at /home/⚫️⚫️⚫️/.cache/selenium/chrome/linux64/120.0.6099.109/chrome 17DEBUG:selenium.webdriver.common.selenium_manager:Required driver: chromedriver 120.0.6099.109 18DEBUG:selenium.webdriver.common.selenium_manager:chromedriver 120.0.6099.109 already in the cache 19DEBUG:selenium.webdriver.common.selenium_manager:Driver path: /home/⚫️⚫️⚫️/.cache/selenium/chromedriver/linux64/120.0.6099.109/chromedriver 20DEBUG:selenium.webdriver.common.selenium_manager:Browser path: /home/⚫️⚫️⚫️/.cache/selenium/chrome/linux64/120.0.6099.109/chrome 21DEBUG:selenium.webdriver.common.service:Started executable: `/home/⚫️⚫️⚫️/.cache/selenium/chromedriver/linux64/120.0.6099.109/chromedriver` in a child process with pid: 18095 using 0 to output -3 22DEBUG:selenium.webdriver.remote.remote_connection:POST http://localhost:52157/session {'capabilities': {'firstMatch': [{}], 'alwaysMatch': {'browserName': 'chrome', 'pageLoadStrategy': <PageLoadStrategy.normal: 'normal'>, 'browserVersion': None, 'goog:chromeOptions': {'prefs': {'download.default_directory': '/home/⚫️⚫️⚫️/UserData/mieru_dl/mieruka_shipping_01', 'download.prompt_for_download': False, 'download.directory_upgrade': True}, 'extensions': [], 'binary': '/home/⚫️⚫️⚫️/.cache/selenium/chrome/linux64/120.0.6099.109/chrome', 'args': ['--headless=new', '--no-sandbox', '--single-process', '--disable-dev-shm-usage']}}}}
該当のソースコード
Python
1from selenium import webdriver 2from selenium.webdriver.common.by import By 3from selenium.webdriver.support.ui import WebDriverWait 4from selenium.webdriver.support import expected_conditions as EC 5 6 #------------------------------------------------------------- 7 # オプション | chrome & driver を取得 8 #------------------------------------------------------------- 9 options = webdriver.ChromeOptions() 10 options.add_argument('--headless=new') 11 options.add_argument('--no-sandbox') 12 options.add_argument('--single-process') 13 options.add_argument('--disable-dev-shm-usage') 14 15 options.set_capability('browserVersion', '120') 16 17 #------------------------------------------------------------- 18 # ダウンロードパス指定 19 #------------------------------------------------------------- 20 prefs = { 21 # 'profile.default_content_settings.popups': 0, 22 'download.default_directory': dlpass_, 23 'download.prompt_for_download': False, 24 'download.directory_upgrade': True 25 } 26 options.add_experimental_option('prefs', prefs) 27 28 #------------------------------------------------------------- 29 # chrome ドライバーへの接続 30 #------------------------------------------------------------- 31 driver = webdriver.Chrome(options=options) 32 33 #------------------------------------------------------------- 34 # download 設定 35 #------------------------------------------------------------- 36 driver.command_executor._commands['send_command'] = ( 37 'POST', 38 '/session/$sessionId/chromium/send_command' 39 ) 40 41 #------------------------------------------------------------- 42 # START 43 #------------------------------------------------------------- 44 mieruUrl = 'xxxxxxxxxxxxx' 45 driver.get(mieruUrl)
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
◾️直接 chrome を立ち上げるとエラー
$ /home/xxxxxxxxx/.cache/selenium/chrome/linux64/120.0.6099.109/chrome --headless=NEW
[0131/185320.676448:WARNING:resource_bundle.cc(464)] locale_file_path.empty() for locale
[0131/185320.676604:ERROR:resource_bundle.cc(1024)] Failed to load /home/xxxxxxxxx/.cache/selenium/chrome/linux64/120.0.6099.109/resources.pak
Some features may not be available.
[0131/185320.708839:FATAL:v8_initializer.cc(573)] Error loading V8 startup snapshot file
[0131/185320.709014:FATAL:v8_initializer.cc(573)] Error loading V8 startup snapshot file
[0131/185320.718611:FATAL:zygote_host_impl_linux.cc(201)] Check failed: . : No such file or directory (2)
Trace/breakpoint trap
◾️①[コンソール1]直接 driver を立ち上げると起動する
$ /home/xxxxxxxxx/.cache/selenium/chromedriver/linux64/120.0.6099.109/chromedriver --log-level=DEBUG
Starting ChromeDriver 120.0.6099.109 (3419140ab665596f21b385ce136419fde0924272-refs/branch-heads/6099@{#1483}) on port 9515
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
◾️②[コンソール2]下記スクリプト起動
#!/bin/sh
curl --location 'localhost:9515/session'
--header 'Content-Type: application/json; charset=utf-8'
--data '{
"capabilities": {
"firstMatch": [
{
"browserName": "chrome"
}
]
}
}'
◾️③[コンソール2]エラー
{"value":{"error":"session not created","message":"session not created: Chrome failed to start: exited normally.\n (session not created: DevToolsActivePort file doesn't exist)\n (The process started from chrome location /opt/google/chrome/chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)","stacktrace":"#0 0x55e667a07f83 \u003Cunknown>
◾️④[コンソール1]
[1738321361.362][INFO]: [30deea2a45c3f7c3d207e76b48e0bb4b] COMMAND InitSession {
"capabilities": {
"firstMatch": [ {
"browserName": "chrome"
} ]
}
}
Browser search. Trying... /home/⚫️⚫️⚫️/.cache/selenium/chromedriver/linux64/120.0.6099.109/chrome
Browser search. Trying... /home/⚫️⚫️⚫️/.cache/selenium/chromedriver/linux64/120.0.6099.109/chrome
Browser search. Trying... /home/⚫️⚫️⚫️/.cache/selenium/chromedriver/linux64/120.0.6099.109/google-chrome
Browser search. Trying... /home/⚫️⚫️⚫️/.cache/selenium/chromedriver/linux64/120.0.6099.109/chromium
Browser search. Trying... /home/⚫️⚫️⚫️/.cache/selenium/chromedriver/linux64/120.0.6099.109/chromium-browser
Browser search. Trying... /usr/local/sbin/chrome
Browser search. Trying... /usr/local/bin/chrome
Browser search. Trying... /usr/sbin/chrome
Browser search. Trying... /usr/bin/chrome
Browser search. Trying... /sbin/chrome
Browser search. Trying... /bin/chrome
Browser search. Trying... /opt/google/chrome/chrome
Browser search. Found at /opt/google/chrome/chrome ←ここのchromeを見てる?
補足
{'code': 65, 'message': 'No space left on device (os error 28)', 'driver_path': '', 'browser_path': ''}
こんなエラーメッセージがありました。

回答1件
あなたの回答
tips
プレビュー