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

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

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

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Q&A

解決済

2回答

5079閲覧

Rubyによるクローラー開発技法のサンプルプログラムが動かない

dlrowolleh

総合スコア120

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

0グッド

1クリップ

投稿2016/11/04 06:59

編集2016/11/04 12:25

###前提・実現したいこと→プログラムを動作させたい

Rubyによるクローラー開発技法
を参考にUbuntu15.10環境でプログラムを作成しています。
プログラムは一字一句写し間違えていないはずなのですが、
実行しようとしたところ、エラーが発生しました。

###試したこと

$ ruby login.rb DEPRECATED: #default_wait_time= is deprecated, please use #default_max_wait_time= instead /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver/firefox.rb:58:in `driver_path': Unable to find Mozilla geckodriver. Please download the server from https://github.com/mozilla/geckodriver/releases and place it somewhere on your PATH. More info at https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/WebDriver. (Selenium::WebDriver::Error::WebDriverError) from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver/firefox/w3c_bridge.rb:30:in `initialize' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver/common/driver.rb:49:in `new' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver/common/driver.rb:49:in `for' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver.rb:82:in `for' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/selenium/driver.rb:20:in `browser' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/selenium/driver.rb:53:in `visit' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/session.rb:240:in `visit' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/dsl.rb:52:in `block (2 levels) in <module:DSL>' from login.rb:15:in `login' from login.rb:26:in `<main>'

課題に対してアプローチしたことを記載してください

###該当のソースコード

Ruby

1# -*- coding: utf-8 -*- 2require 'capybara' 3require 'capybara/dsl' 4require 'selenium-webdriver' 5 6Capybara.current_driver = :selenium 7Capybara.app_host = "https://affiliate.amazon.co.jp/" 8Capybara.default_wait_time = 5 9 10module Crawler 11 class Amazon 12 include Capybara::DSL 13 14 def login 15 visit('') 16 fill_in "username", 17 :with => 'YOUR_AMAZON_USER_ID' 18 fill_in "password", 19 :with => 'YOUR_AMAZON_PASSWORD' 20 click_button "$B%5%$%s%$%s(B" 21 end 22 end 23end 24 25crawler = Crawler::Amazon.new 26crawler.login

###補足情報(言語/FW/ツール等のバージョンなど)

$ ruby -v ruby 2.2.4p230 (2015-12-16 revision 53155) [x86_64-linux]
$ gem -v 2.4.5.1
$ gem list *** LOCAL GEMS *** addressable (2.4.0) bigdecimal (1.2.6) capybara (2.10.1) childprocess (0.5.9) cliver (0.3.2) ffi (1.9.14) io-console (0.4.3) jar_wrapper (0.1.8) json (1.8.1) mime-types (3.1) mime-types-data (3.2016.0521) mini_portile2 (2.1.0) minitest (5.4.3) nokogiri (1.6.8.1) poltergeist (1.11.0) power_assert (0.2.2) psych (2.0.8) rack (2.0.1) rack-test (0.6.3) rake (10.4.2) rdoc (4.2.0) rubyzip (1.2.0) selenium (0.2.11) selenium-webdriver (3.0.0) test-unit (3.0.8) websocket (1.2.3) websocket-driver (0.6.4) websocket-extensions (0.1.2) xpath (2.0.0) zip (2.0.2)
$ gem env RubyGems Environment: - RUBYGEMS VERSION: 2.4.5.1 - RUBY VERSION: 2.2.4 (2015-12-16 patchlevel 230) [x86_64-linux] - INSTALLATION DIRECTORY: /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0 - RUBY EXECUTABLE: /home/pc/.rbenv/versions/2.2.4/bin/ruby - EXECUTABLE DIRECTORY: /home/pc/.rbenv/versions/2.2.4/bin - SPEC CACHE DIRECTORY: /home/pc/.gem/specs - SYSTEM CONFIGURATION DIRECTORY: /home/pc/.rbenv/versions/2.2.4/etc - RUBYGEMS PLATFORMS: - ruby - x86_64-linux - GEM PATHS: - /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0 - /home/pc/.gem/ruby/2.2.0 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :backtrace => false - :bulk_threshold => 1000 - REMOTE SOURCES: - https://rubygems.org/ - SHELL PATH: - /home/pc/.rbenv/versions/2.2.4/bin - /usr/lib/rbenv/libexec - /home/pc/.rbenv/plugins/ruby-build/bin - /home/pc/.rbenv/shims - /home/pc/.rbenv/bin - /home/pc/.rbenv/shims - /home/pc/.rbenv/bin - /usr/local/sbin - /usr/local/bin - /usr/sbin - /usr/bin - /sbin - /bin - /usr/games - /usr/local/games

です。

###追記

いろいろと調べているのですが、やり方がさっぱり分かりませんでした。
ひとまず、
https://developer.mozilla.org/ja/docs/Mozilla/QA/Marionette/WebDriver
Rubyの項目に書いてある、

$ gem install selenium-webdriver

は実行しています。
https://github.com/mozilla/geckodriver/releasesから
geckodriver-v0.11.1-linux64.tar.gzをダウンロードして、
ファイルマネージャから
右クリックで展開しました。
すると、
geckodriverという実行ファイルが出てきたので、
端末を開き、geckodriverがある場所で

$ ./geckodriver

と実行してみたところ、

1478251811427 geckodriver INFO Listening on 127.0.0.1:4444

と表示されます。

また、[新卒向け] Linux開発環境の基礎知識
を参考に

$ tar zxvf geckodriver-v0.11.1-linux64.tar.gz geckodriver
$ ./configure bash: ./configure: そのようなファイルやディレクトリはありません

となりました。
このあと、どのようにすればいいのか分かりませんでした。
また、どのような情報を提供すれば良いのかも分からず、困っております。
何卒よろしくお願いします。

となりました。

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

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

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

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

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

退会済みユーザー

退会済みユーザー

2016/11/04 11:56

パスの通ったディレクトリに geckodriver を置いて、ruby login.rb を実行した結果はどうなりましたか?
dlrowolleh

2016/11/04 12:31

ありがとうございます。firefoxが起動して、プログラムが動作しました。しかし、ログアウトするとやり直さないといけないようです。
退会済みユーザー

退会済みユーザー

2016/11/04 12:36

あとは環境変数関連ですね。コメントしておきましたので、頑張ってください。
guest

回答2

0

ベストアンサー

Please download the server from https://github.com/mozilla/geckodriver/releases

この説明のように geckodriver をダウンロードしたようですので、その次の

place it somewhere on your PATH.

を実行しましょう。Linux で bash だと思うのですが

bash

1set | grep PATH

を実行してみましょう。そうすると

bash

1PATH=/usr/local/sbin:/usr/local/heroku/bin:/Users/BSDmad/.rbenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

のように PATH 環境変数に設定されているパスが表示されると思います。

  1. 表示されたいずれかのディレクトリに geckodriver をコピー
  2. 自分の .bash_profile の PATH 変数に $HOME/bin を追加し、mkdir ~/bin を実行後、~bin/ 下に geckodriver をコピー

のいずれかをやってから、もう一度 ruby login.rb を実行してみて下さい。

投稿2016/11/04 11:06

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

dlrowolleh

2016/11/04 12:28

返信いただきありがとうございます。 文字数を超えてしまったので、こちらで追記させていただきます。(読みにくくなってしまいすみません) ##追記2 ``` $ set | grep PATH DEFAULTS_PATH=/usr/share/gconf/ubuntu.default.path MANDATORY_PATH=/usr/share/gconf/ubuntu.mandatory.path PATH=/home/pc/.rbenv/shims:/home/pc/.rbenv/bin:/home/pc/.rbenv/shims:/home/pc/.rbenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0 XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0 local cmd PATH=$PATH:/sbin; if [[ -z "${CDPATH:-}" || "$cur" == ?(.)?(.)/* ]]; then for i in ${CDPATH//:/' PATH=$PATH:/usr/sbin:/sbin:/usr/local/sbin type $1 &> /dev/null COMPREPLY=($( compgen -W "$( PATH="$PATH:/sbin" lsmod | awk '{if (NR != 1) print $1}' )" -- "$1" )) local PATH=$PATH:/sbin; local PATH="$PATH:/sbin:/usr/sbin"; COMPREPLY+=($( compgen -W "$( PATH="$PATH:/sbin" lspci -n | awk '{print $3}')" -- "$cur" )) local PATH=$PATH:/sbin:/usr/sbin:/usr/local/sbin; COMPREPLY+=($( compgen -W "$( PATH="$PATH:/sbin" lsusb | awk '{print $6}' )" -- "$cur" )) ``` 表示さました。 #追記3 ``` $ cp geckodriver /home/pc/.rbenv/shims ``` を実行したあと、 ``` $ ruby login.rb ``` を実行すると、firefoxが立ち上がって、`https://affiliate.amazon.co.jp/`のページが開いて すでに登録済みの方はこちらからログインしてください Eメールアドレスまたは携帯電話番号 パスワード 欄に文字が入力されました。 ``` $ ruby login.rb DEPRECATED: #default_wait_time= is deprecated, please use #default_max_wait_time= instead /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/node/finders.rb:44:in `block in find': Unable to find button "\e$B%5%$%s%$%s\e(B" (Capybara::ElementNotFound) from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/node/base.rb:85:in `synchronize' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/node/finders.rb:33:in `find' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/node/actions.rb:57:in `click_button' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/session.rb:735:in `block (2 levels) in <class:Session>' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/dsl.rb:52:in `block (2 levels) in <module:DSL>' from login.rb:20:in `login' from login.rb:26:in `<main>' ``` と表示されました。 ただ、 ``` $ exit ``` のあと実行しようとすると、 ``` $ ruby login.rb DEPRECATED: #default_wait_time= is deprecated, please use #default_max_wait_time= instead /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver/firefox.rb:58:in `driver_path': Unable to find Mozilla geckodriver. Please download the server from https://github.com/mozilla/geckodriver/releases and place it somewhere on your PATH. More info at https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/WebDriver. (Selenium::WebDriver::Error::WebDriverError) from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver/firefox/w3c_bridge.rb:30:in `initialize' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver/common/driver.rb:49:in `new' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver/common/driver.rb:49:in `for' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver.rb:82:in `for' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/selenium/driver.rb:20:in `browser' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/selenium/driver.rb:53:in `visit' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/session.rb:240:in `visit' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/dsl.rb:52:in `block (2 levels) in <module:DSL>' from login.rb:15:in `login' from login.rb:26:in `<main>' ``` また、 ``` $ ls /home/pc/.rbenv/shims erb gem irb nokogiri rackup rake rdoc ri ruby selenium ``` となっていました。 どうやらログアウト(?)するとやり直さないといけないようです。 これが環境変数というやつでしょうか? 勉強になります。
退会済みユーザー

退会済みユーザー

2016/11/04 12:35 編集

とりあえず動いたみたいですね :)。おめでとうございます。 > これが環境変数というやつでしょうか? うーん、geckodriver が消えちゃうのは変ですね。 チョッと真っ当に設定しましょうか。 1. mkdir ~/bin/ 2. cp geckodriver ~/bin/ 3. vi .bash_profile ↑ PATH 変数を PATH=$PATH:/.../:$HOME/bin と、末尾に :$HOME/bin を追加 これで、一度、ログアウトしても大丈夫になると思います。
dlrowolleh

2016/11/06 09:36

度々すみません。 1. mkdir ~/bin/ 2. cp geckodriver ~/bin/ は出来ました。 3. vi .bash_profile ↑ PATH 変数を PATH=$PATH:/.../:$HOME/bin と、末尾に :$HOME/bin を追加 なのですが、どこのディレクトリで実行すればいいでしょうか? ~/bin/でなく、ホームディレクトリでいいでしょうか? 自分には環境設定やPATHの概念がよく分からず、困惑しております。 2. が終わった際に $ cd と打って、ホームディレクトリに移動して実行しました。 また、↑ PATH 変数を PATH=$PATH:/.../:$HOME/bin と、末尾に :$HOME/bin を追加 とのことですが、 ホームディレクトリに.bash_profileはなかったので、初めて作成するという形になったため、 1 PATH=$PATH:/.../:$HOME/bin 2 :$HOME/bin 3 の3行でいいでしょうか? それらを終えた後、 $ ruby login.rb と実行しようとした結果、 firefoxは立ち上がりませんでした。 DEPRECATED: #default_wait_time= is deprecated, please use #default_max_wait_time= instead /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver/firefox.rb:58:in `driver_path': Unable to find Mozilla geckodriver. Please download the server from https://github.com/mozilla/geckodriver/releases and place it somewhere on your PATH. More info at https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/WebDriver. (Selenium::WebDriver::Error::WebDriverError) from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver/firefox/w3c_bridge.rb:30:in `initialize' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver/common/driver.rb:49:in `new' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver/common/driver.rb:49:in `for' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/selenium-webdriver-3.0.0/lib/selenium/webdriver.rb:82:in `for' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/selenium/driver.rb:20:in `browser' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/selenium/driver.rb:53:in `visit' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/session.rb:240:in `visit' from /home/pc/.rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/capybara-2.10.1/lib/capybara/dsl.rb:52:in `block (2 levels) in <module:DSL>' from login.rb:15:in `login' from login.rb:26:in `<main>' 以前の、geckodriverをPATH=/usr/local/sbin:/usr/local/heroku/bin:/Users/BSDmad/.rbenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin のいずれかのディレクトリにコピーする前と同じようなエラーがでました。 geckodriverがコピー先のディレクトリから消えてしまう理由なんだと思われますか? また、前回のご回答の中の >set | grep PATH と >PATH=/usr/local/sbin:/usr/local/heroku/bin:/Users/BSDmad/.rbenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin のように PATH 環境変数に設定されているパスが表示されると思います。 >表示されたいずれかのディレクトリに geckodriver をコピー を行った理由(なぜそのディレクトリにgeckodriverをコピーすればプログラムが動作するということが分かった理由)も解説していただければ幸いです。 何卒よろしくおねがいします。
退会済みユーザー

退会済みユーザー

2016/11/06 09:48

環境変数、パス(PATH)については http://qiita.com/soarflat/items/d5015bec37f8a8254380 など、色々な記事が既にネットにありますので、『bash 環境変数 パス』などで検索してみてください。 > geckodriverがコピー先のディレクトリから消えてしまう理由なんだと思われますか? これは分からないです。Ubuntu はどこにインストールされたものでしょうか? なお /home/pc/bin/ 下にコピーしたファイルは消えなかった、ということで良いですか? また自分のホームディレクトリ(cd エンターして移動したディレクトリ)に移動し、ls -al .bash* してみてください。.bash_profile は無かったようですが、.bashrc など、他のファイルも無いでしょうか? bash じゃないのかな… いずれにしても説明が難しかったようでスイマセン。.bash_profile には PATH=$PATH:/home/pc/bin の一行だけ、書いてみて下さい。
dlrowolleh

2016/11/06 10:32

度々すみません。 環境はbashを使用しています。 aliasの設定などはbashrcに設定しているのでbashで間違いないです。書き忘れていました。 また、 1. mkdir ~/bin/ 2. cp geckodriver ~/bin/ で /home/pc/bin/ にコピーした geckodriverは $ exit しても消えませんでした。 .bashrcの末尾に PATH=$PATH:/home/pc/bin と追記し、 ruby login.rb と実行したところ、 エラー文は変わりませんでした。 >Ubuntu はどこにインストールされたものでしょうか? LiveCDからHDDにインストールしています(これで回答になっているでしょうか…)。
退会済みユーザー

退会済みユーザー

2016/11/06 10:37

あー、すいません。『export PATH=$PATH:/home/pc/bin』と、頭に 『export』を追加してもらえますか? その後、一度ログアウトし、再度ログインしてください。 which geckodriver と叩いて、/home/pc/bin/geckodriver と表示されますか? されれば OK、されなければ未だ PATH が適応されてない、ということになります。
dlrowolleh

2016/11/06 11:15

$ export PATH=$PATH:/home/pc/bin $ exit 端末起動 $ which geckodriver $ でした。 .bashrcの PATH=$PATH:/home/pc/bin の頭に exportをつけても つけなくても結果は何も表示されませんでした。
退会済みユーザー

退会済みユーザー

2016/11/06 11:57

/home/pc/bin/geckodriver で起動できますか? また、再ログイン後に set | grep PATH で、/home/pc/bin/ は含まれていますか?
dlrowolleh

2016/11/07 02:31

ご回答いただきましてありがとうございます。 解決しました。 きちんと動作しました。 $ ruby login.rb はきちんと動作しました。 $ exit と打って、再度端末を起動して、 $ ruby login.rb と実行した時も同様でした。 原因は私側にありました。 ユーザ名の置換をしていたのにもかかわらず、 ユーザ名の置換を元に戻し忘れるといったものでした。 投稿する際に、ユーザ名をそのまま投稿するのはアレと思い、 (ユーザ名)をpcに置換していたのを忘れていました。 なので、.bashrcの末尾に追記した PATH=$PATH:/home/pc/bin を PATH=$PATH:/home/(ユーザ名)/bin に戻したところ、 $ ruby login.rb でうまく動作しました。 $ echo $USER では pcとは表示されません。 存在しないユーザ名でパスを通していたので動く訳ないですよね...。 質問する側がである私がこのような重大なミスをしていてはお話になりません。 大変申し訳ございませんでした。 また、 .bashrcの末尾に PATH=$PATH:/home/$USER/bin と書き換えて実行した際は PATH=$PATH:/home/(ユーザ名)/bin に直した時と同様にきちんと動作しました。 set | grep PATH を実行した際は、/home/(ユーザ名)/bin/ が表示されました。 そして、 geckodriverがコピー先のディレクトリ /home/(ユーザ名)/.rbenv/shims から消えてしまう理由 ですが、 やっていてふと思いだしたことがあります。 以前私が、capybaraやanemone等を導入した際、 $ rbenv exec gem install でcapybaraやanemone等を導入していました。 capybaraやanemone等は /home/(ユーザ名)/.rbenv/shims の中にありました。 $ rbenv exec gem install というのは /home/(ユーザ名)/.rbenv/shims にコピーして、PATHを通すというものなのではないかと 思いました。 (調べたら出てきそうです...。調べていた際にもう読んでいたかもしれませんが、その時の私ではまだ到底理解できていなかったです。大前提を知らなかったためです...いま実践してみてやっと分かったような気がします。) $ rbenv exec gem install geckodriver でいけるかもしれないと思いました。 今回の件で、環境設定、環境変数、PATHの通し方の概要を身をもって実感いたしました。 大変勉強になりました。 お騒がせしてしまい、大変申し訳ありませんでした。 心より謝罪いたします。 ご親切に手とり足取り教えていただきまして本当にありがとうございました。 お手を煩わせてしまい、大変申し訳ございませんでした。 教えて頂いたURL参考になりました。 なんとお礼及び謝罪を申し上げたら良いものか...。 長文失礼致しました。
dlrowolleh

2016/11/07 02:37

訳も分からないクセして環境設定などをいじくり回してしまっていたようなので、 別のUbuntu環境のパソコンでもやってみたいと思います。 貴重なお時間を奪ってしまい、大変申し訳ありませんでした。 心より謝罪及びお礼申し上げます。
退会済みユーザー

退会済みユーザー

2016/11/07 11:27

おお、上手く行ってよかったですね! 私も説明がよろしくない所が多々ありましたので、お互い様ということで :)。 なお、PATH 環境変数への設定はわかりやすくするつもりで /home/pc/bin を追記するように書いたのですが、実際には $HOME/bin と書くのが一般的です。今考えればこちらを先に教えるべきでした… コレに懲りず、また色々と質問してみて下さい。お役に立てるようであれば、また回答させて頂きます。
dlrowolleh

2016/11/08 07:14

ご親切にご教授いただきましてありがとうございました! 勉強になりました! 本当に助かりました!
guest

0

Unable to find Mozilla geckodriver.
Please download the server from https://github.com/mozilla/geckodriver/releases and place it somewhere on your PATH.
More info at https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/WebDriver.

と出てますが、これは済という事でよろしいでしょうか?

投稿2016/11/04 07:20

hana-da

総合スコア1728

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

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

dlrowolleh

2016/11/04 08:01

hana-da 様 度々ご回答いただき、恐縮です。 済ではないです。 $ ruby login.rb を実行したときにエラーが出て、 firefoxにgeckodriverを入れてくださいとの旨の内容だと思うのですが、 どのようにすればいいのか分からず質問いたしました。
hana-da

2016/11/04 08:55

せめてどういう対応をとったのかぐらい書かないと「丸投げ」が付けられてしまいそうな気がします。今の質問内容は「エラーが出ました何とかしてください」ぐらいの情報量しかありません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問