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

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

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

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

selenium

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

Q&A

解決済

Seleniumでchromedriverが機能しない

pockygame
pockygame

総合スコア17

Chrome

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

selenium

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

3回答

0グッド

1クリップ

33003閲覧

投稿2018/02/13 08:12

SeleniumとChromeのヘッドレスブラウザでスクレイピングを行うコードを書いているのですが、エラーが出てしまい困っております。
Cloud9で実行しており、ChromeもChromedriverもインストールをしたのですがエラーが出てしまいます。
解決法がおわかりの方がいらっしゃいましたらお教えいただけますと大変助かります。
よろしくお願いします。

こちらが書いたコードになります。

Python

1from selenium import webdriver 2from selenium.webdriver.chrome.options import Options 3import time 4 5#chrome Headless設定 6options = Options() 7options.add_argument("--headless") 8options.add_argument("--disable-gpu") 9browser = webdriver.Chrome(executable_path='/usr/bin/chromedriver',chrome_options=options) 10 11url="該当サイトのURL" 12browser.get(url) 13browser.implicitly_wait(10) 14time.sleep(10) 15html = browser.page_source.encode('utf-8') 16print(html)

こちらがエラー内容です。

Traceback (most recent call last): File "/home/ec2-user/environment/sample/4_sample.py", line 9, in <module> browser = webdriver.Chrome(executable_path='/usr/bin/chromedriver',chrome_options=options) File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/chrome/webdriver.py", line 75, in __init__ desired_capabilities=desired_capabilities) File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 154, in __init__ self.start_session(desired_capabilities, browser_profile) File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 243, in start_session response = self.execute(Command.NEW_SESSION, parameters) File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 311, in execute self.error_handler.check_response(response) File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/errorhandler.py", line 237, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.WebDriverException: Message: unknown error: cannot find Chrome binary

よろしくお願いします。

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答3

2

ベストアンサー

Windowsの例ですが、
「ヒント: Google Chrome ブラウザがユーザ レベルでインストールされている場合(たとえば、インストール場所が C:\Users\XYZ\AppData\Local\Google\Chrome\Application\chrome.exe の場合)、テスト ケースをステージングすると、「org.openqa.selenium.WebDriverException: unknown error: cannot find Chrome binary」というエラー メッセージが表示されることがあります。

このエラーを回避するには、Google Chrome ブラウザは、システム全体のインストールとしてインストールされていることを確認します。 すべてのアカウントによってアクセスできるようにするには、たとえば、C:\Program Files (x86)\Google\Chrome\Application\chrome.exe などの場所にインストールされている必要があります。」

というのを見つけました。つまりchromeを見つけられていないのだと思います。

投稿2018/02/13 08:26

編集2018/02/13 08:27
unz.hori

総合スコア1057

umyu, pockygame👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

pockygame

2018/02/13 08:30

ご回答ありがとうございました。こちらの記事は私も読んだのですが、cloud9の場合どこにアプリケーションを移動させれば良いのかがわからず、困っておりました。cloud9についてももう少し調べてみます。
pockygame

2018/02/13 08:51

有難うございます。こちら確認させていただきます!

0

コレではいかんですかね?私の例は派生のCoccocですが。

Python

1from selenium import webdriver 2import chromedriver_binary 3options = webdriver.ChromeOptions() 4 5# お使いのクロミウム派生ブラウザのパスを入れましょう。 6options.binary_location = r"C:\Users\<user>\AppData\Local\CocCoc\Browser\Application\browser.exe" 7 8driver = webdriver.Chrome( chrome_options=options)

投稿2020/12/01 18:28

Kazumori102

総合スコア43

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

0

ご指摘いただいた通り、ChromeがAMI(cloud9)にインストール出来ていなかったことが原因でした。
そして他の質問でもさせていただいたのですが、AMIにChromeをインストールするのは少し手間がかかるので、
私はローカルでcentos7の環境にChromeをインストールしてやりたかったことを実現出来ました。

AMIにchromeを入れるのが大変というのはこちらの質問です
https://teratail.com/questions/113328

投稿2018/02/15 05:15

pockygame

総合スコア17

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

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

ただいまの回答率
86.02%

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

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

質問する

関連した質問

同じタグがついた質問を見る

Chrome

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

selenium

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