Docker+Python3+Seleniumで「chromedriver unexpectedly exited. Status code was: 255」
Docker上に、Python3.8ベースで環境を作り、
seleniumで試そうとしていたところ、
うまくいかない事象が起きて、
エラーが起きたのでメモを残す。
個人的な備忘録のために、
この記事に残しておく。
エラー内容メモ
コンテナ内で、
seleniumを立ち上げる中で、
chromedriverの処理として、
try:
self.driver = webdriver.Chrome(options=chrome_options)
except Exception as e:
print(f"An error occurred: {str(e)}")
この部分でエラーを確認すると、
An error occurred:
Message:
Service /root/.cache/selenium/chromedriver/linux64/118.0.5993.70/chromedriver
unexpectedly exited.
Status code was: 255
このようなエラーが発生。
参考サイト
以下の2つ。
https://qiita.com/ma-me/items/090c3e9befc31e68f063
https://github.com/googlecolab/colabtools/issues/3347
個人用のコードメモ
上記サイトを参考に、
以下のコードを作って実行。
vi update_selenium_for_debian.sh
#!/bin/bash
# Ubuntu no longer distributes chromium-browser outside of snap
#
# Proposed solution: https://askubuntu.com/questions/1204571/how-to-install-chromium-without-snap
# Add debian buster
cat > /etc/apt/sources.list.d/debian.list <<'EOF'
deb [arch=amd64 signed-by=/usr/share/keyrings/debian-buster.gpg] http://deb.debian.org/debian buster main
deb [arch=amd64 signed-by=/usr/share/keyrings/debian-buster-updates.gpg] http://deb.debian.org/debian buster-updates main
deb [arch=amd64 signed-by=/usr/share/keyrings/debian-security-buster.gpg] http://deb.debian.org/debian-security buster/updates main
EOF
# Add keys
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DCC9EFBF77E11517
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 648ACFD622F3D138
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 112695A0E562B32A
apt-key export 77E11517 | gpg --dearmour -o /usr/share/keyrings/debian-buster.gpg
apt-key export 22F3D138 | gpg --dearmour -o /usr/share/keyrings/debian-buster-updates.gpg
apt-key export E562B32A | gpg --dearmour -o /usr/share/keyrings/debian-security-buster.gpg
# Prefer debian repo for chromium* packages only
# Note the double-blank lines between entries
cat > /etc/apt/preferences.d/chromium.pref << 'EOF'
Package: *
Pin: release a=eoan
Pin-Priority: 500
Package: *
Pin: origin "deb.debian.org"
Pin-Priority: 300
Package: chromium*
Pin: origin "deb.debian.org"
Pin-Priority: 700
EOF
# Install chromium and chromium-driver
apt-get update
apt-get install chromium chromium-driver
# Install selenium
pip install selenium
作ったら、
sh update_selenium_for_debian.sh
を実行する。
その後、アプリケーション再起動で完了。
スキルを使って、就職/転職/副業する時のサイト
プログラミングのスキルなどを、自分なりに高めた上で、
自分のスキルをアピールして就職や転職を行い、年収をあげるか、
副業という形で、年収にプラスアルファの稼ぎを増やすことはできます。
まずはできる範囲で取り組むことで、
少しずつ、経験値も増え、自分のスキルが収入につながるのでおすすめです。