teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

追記修正

2016/11/01 09:07

投稿

dlrowolleh
dlrowolleh

スコア120

title CHANGED
@@ -1,1 +1,1 @@
1
- Ubuntu環境でrubyの capybara を使えるようにしたい【環境設定のやり方】
1
+ Ubuntu環境でrubyの capybara を使えるようにしたい【環境設定のやり方】@Rubyによるクローラー開発技法から質問
body CHANGED
@@ -42,4 +42,137 @@
42
42
 
43
43
  現在少し離れたところにおります故、詳しい補足情報を記載できず質問になってしまいました。
44
44
  説明不足等、至らぬ点満載なので指摘していただけましたら追記いたします。
45
- 何卒よろしくお願いいたします。
45
+ 何卒よろしくお願いいたします。
46
+
47
+ ###追記(11/1)
48
+ 質問が散らかって大変読みづらくなっておりました。大変失礼しました。
49
+
50
+ ###前提・実現したいこと
51
+ 前提:
52
+ Ubuntu環境でrubyプログラムを作成しています。実行しようとするとエラーが発生しました。
53
+
54
+ 実現したいこと:
55
+ 0. プログラムを動作させたい
56
+ 0. エラーが出て動かない原因・直し方を教えて欲しい
57
+
58
+ です。
59
+ よろしくお願いします。
60
+
61
+ ###発生している問題・エラーメッセージ
62
+ プログラムが動作しません。
63
+ ```
64
+ $ ruby login.rb
65
+ /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- capybara (LoadError)
66
+ from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
67
+ from login.rb:2:in `<main>'
68
+
69
+ ```
70
+ ##該当のソースコード
71
+
72
+ ```ruby
73
+ # -*- coding: utf-8 -*-
74
+ require 'capybara'
75
+ require 'capybara/dsl'
76
+ require 'selenium-webdriver'
77
+
78
+ Capybara.current_driver = :selenium
79
+ Capybara.app_host = "https://affiliate.amazon.co.jp/"
80
+ Capybara.default_wait_time = 5
81
+
82
+ module Crawler
83
+ class Amazon
84
+ include Capybara::DSL
85
+
86
+ def login
87
+ visit('')
88
+ fill_in "username",
89
+ :with => 'YOUR_AMAZON_USER_ID'
90
+ fill_in "password",
91
+ :with => 'YOUR_AMAZON_PASSWORD'
92
+ click_button "$B%5%$%s%$%s(B"
93
+ end
94
+ end
95
+ end
96
+
97
+ crawler = Crawler::Amazon.new
98
+ crawler.login
99
+ ```
100
+
101
+ です。
102
+ Capybara?そんなものは知りませんよ。
103
+ というエラーだと解釈しました。
104
+ そのため、Capybaraを使えるようにすればいいと思って、
105
+ `$ gem install capybara`
106
+ とすると
107
+ ```
108
+ Fetching: rack-2.0.1.gem (100%)
109
+ ERROR: While executing gem ... (Gem::FilePermissionError)
110
+ You don't have write permissions for the /var/lib/gems/2.1.0 directory.
111
+ ```
112
+ 出ました。また、
113
+ `$ sudo gem install capybara`
114
+ だと
115
+ ```
116
+ ERROR: Error installing capybara:
117
+ rack requires Ruby version >= 2.2.2.
118
+ ```
119
+ となりました。
120
+ ここで行き詰まっております。
121
+ どのようにすれば`login.rb`を実行できるでしょうか?
122
+ よろしくお願いします。
123
+ ###補足情報
124
+ 環境はUbuntu15.10です。
125
+ ```
126
+ $ gem list
127
+ ```
128
+ 実行時
129
+ ```
130
+ *** LOCAL GEMS ***
131
+
132
+ addressable (2.4.0)
133
+ anemone (0.7.2)
134
+ bigdecimal (1.2.4)
135
+ fastri (0.3.1.1)
136
+ io-console (0.4.3)
137
+ jar_wrapper (0.1.8)
138
+ json (1.8.1)
139
+ mime-types (3.1)
140
+ mime-types-data (3.2016.0521)
141
+ mini_portile2 (2.1.0)
142
+ minitest (4.7.5)
143
+ nokogiri (1.6.8.1)
144
+ phantomjs (2.1.1.0)
145
+ psych (2.0.5)
146
+ rake (10.1.0)
147
+ rcodetools (0.8.5.0)
148
+ rdoc (4.1.0)
149
+ robotex (1.0.0)
150
+ selenium (0.2.11)
151
+ test-unit (2.1.8.0)
152
+ websocket-driver (0.6.4 java)
153
+ websocket-extensions (0.1.2)
154
+ xpath (2.0.0)
155
+ zip (2.0.2)
156
+ ```
157
+ また、
158
+ ```
159
+ $ ruby -v
160
+ ```
161
+ 実行時は
162
+ ```
163
+ ruby 2.1.8p440 (2015-12-16 revision 53160) [x86_64-linux-gnu]
164
+ ```
165
+ でした。
166
+
167
+ ##まとめ
168
+
169
+ 0. プログラムを動作させたい
170
+ 0. エラーが出て動かない原因・直し方を教えて欲しい
171
+ 0. Capybaraがないの解釈で大丈夫か、そうだとしたらCapybaraの導入のやり方を教えて欲しい
172
+
173
+ です。
174
+
175
+ ##余談
176
+ 0. 環境構築のやり方などを調べるが、大半がMacまたはWindows向けの設定の仕方が出てくる。Ubuntu等のリナックスで開発する際の注意点や常識をせっかくなのでこの際知りたい。(sudoをつけないといけないのを知らずに痛い目に遭ったため)
177
+ 0. CapybaraやPoltergeiset等のライブラリがある等の情報を皆様はどのようにして仕入れているのか?
178
+ 0. [Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例](https://www.amazon.co.jp/Ruby%E3%81%AB%E3%82%88%E3%82%8B%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%A9%E3%83%BC%E9%96%8B%E7%99%BA%E6%8A%80%E6%B3%95-%E5%B7%A1%E5%9B%9E%E3%83%BB%E8%A7%A3%E6%9E%90%E6%A9%9F%E8%83%BD%E3%81%AE%E5%AE%9F%E8%A3%85%E3%81%A821%E3%81%AE%E9%81%8B%E7%94%A8%E4%BE%8B-%E4%BD%90%E3%80%85%E6%9C%A8-%E6%8B%93%E9%83%8E/dp/4797380357)のサンプルコードについて質問しているが、大丈夫か?