質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

Q&A

解決済

1回答

2854閲覧

WebDriverの実行可能なPATHが必要だと表示されましたが、具体的に何をすれば良いのでしょうか。

brian

総合スコア3

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

0グッド

0クリップ

投稿2020/08/25 07:47

ターミナルにてコマンドを実行したところ、以下のメッセージが表示されました。

selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home

サイトを確認し、ChromeDriverをインストールし、コマンドをもう一度実行しましたが、メッセージの内容は変わりませんでした。

このようなメッセージが出た場合に具体的にどのような対処をすれば良いかご教授ください。

ちなみにプログラミングに関しては初心者です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

環境も言語も書いてないので、具体的なアドバイスがしにくいです。
質問の多い、WindowsでPythonだとすると、

案1:PATHに既に登録されているところに、chromedrive.exeを置く。例えばC:\Windows\chromedrive.exeとか。

案2:chromedrive.exeを置いたところを、PATHに登録する。例えばC:\webdriver\chromedrive.exeに置いたのなら、環境変数の設定画面でPATHに、``C:\webdriver`のディレクトリを追加する。

案3:プログラムにdriver = webdriver.Chrome()とか、driver = webdriver.Chrome(options=options)とかそれに類する記述があると思うので、そこにdriver = webdriver.Chrome("C:/webdriver/chromedrive.exe", options=options)のようにchromedrive.exeのパスを書く。

#追記
案3補足版:
概要:webdriver.Chrome呼び出し時に、webdriverの絶対パスを引数で指定します。

まず、webdriverの絶対パスを確認しましょう。

次に、もともとのwebdriver.Chrome呼び出しは、引数無しの場合もあるし、option=optionのように引き数が既にある場合があります。あった引き数はそのまま残す必要があります。

変更後のwebdriver.Chrome呼び出しは、
元の引き数がなかった場合は、webdriver.Chrome("webdriverの絶対パス")
元の引き数があった場合は、webdriver.Chrome("webdriverの絶対パス",元の引き数)

投稿2020/08/25 08:05

編集2020/08/27 12:40
otn

総合スコア85901

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

brian

2020/08/26 15:58

ご回答いただき有難うございます。 説明不足で申し訳ありません。Pythonを使い、Macのターミナルにてコマンドを実行しております。 PATHを置くという意味はどのような動作をすればよいのでしょうか。 全くの初心者ゆえ、愚問だとはおもいますがご指導いただければありがたく思います。
otn

2020/08/26 16:12 編集

「PATHを置く」とはどこにも書いてないのですが、どの案のどの部分のことですか?
brian

2020/08/26 16:13

案1の”PATHの既に登録されているところ”とは何のことを指しているのでしょうか?また、”chromedrive.exeを置く”というイメージがあまり湧かないのですが、何をどこにどのように作業をすればよいのか教えていただけますでしょうか。 頭悪くて申し訳ありません。
otn

2020/08/26 16:16

echo $PATHで、コロン区切りでディレクトリが表示されるので、そのどれかにchromedriverを移動させると言うことです。分からなければecho $PATHの結果を書いてください。 あと、chromedriverはどこにインストールしたのでしょうか?
brian

2020/08/27 10:33

丁寧にご回答していただき有難うございます。 インストールをしたChromedriverはデスクトップにあります。 以下、echo $PATHで表示された結果です。 どのようにすればうまくPythonのコマンドが実行されるのでしょうか。 /opt/anaconda3/bin:/Users/brian/.pyenv/shims:/Users/brian/.pyenv/bin:/Library/Frameworks/Python.framework/Versions/3.8/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
otn

2020/08/27 10:39

その場合だと薦めませんが、どうしても案1で行きたいと言うことなら、 sudo mv chromedriveのフルパス /usr/local/bin でしょうか。 案3がお薦めです。
brian

2020/08/27 11:14

案3を試すために、プログラムのdriver = webdriver.Chrome()という部分をdriver = webdriver.Chrome("C:/webdriver/chromedrive.exe", options=options)に変更したところ、 NameError: name 'options' is not definedと表示されました。 何か名前を変更しなければならないのでしょうか?
otn

2020/08/27 11:22

いやいや、「名前:山田太郎」をそのまま見本の通り書いちゃ駄目でしょ。自分の名前を書かないと。 案3に書いてある文章の意味が全くわからないと言うことですかね。 後で書き直すのでお待ち下さい。
brian

2020/09/02 16:20

やっと今日、何度も答えが分からないまま試行錯誤を繰り返し、実行することができました。本当に有難うございます。ちゃんと実行できてそこでotn様がおっしゃっている意味がわかりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問