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

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

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

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

Q&A

2回答

1118閲覧

コマンドラインで渡した値をクロームでグーグル検索するプログラムで検索が終わるとWindowがすぐ閉じてしまう!!

slc7z

総合スコア16

Ruby

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

0グッド

1クリップ

投稿2018/10/28 08:57

よろしくお願いします。
コマンドラインで渡した値をGoogle Chromeでグーグル検索するプログラムを書いたのですが、
ChromeのWindowが検索終了後閉じてしまいます。

Sleepを入れて対処してみたのですが、これだと複数の単語を検索した際に
前の検索が終わって10秒経ってから閉じてまた検索して10秒、、、

というのを繰り返し、自分が求める結果と違いました。

検索結果のWindowを保持したまま、次の検索を表示するにはどのようにすれば
いいでしょうか?

アドバイスよろしくお願いします。

require "selenium-webdriver"

driver = Selenium::WebDriver.for :chrome
driver.navigate.to "http://google.com"

element = driver.find_element(:name, 'q')
element.send_keys ARGV[0]
element.submit

puts driver.title
sleep(10)
driver.quit

driver = Selenium::WebDriver.for :chrome
driver.navigate.to "http://google.com"

element = driver.find_element(:name, 'q')
element.send_keys ARGV[1]
element.submit

puts driver.title
sleep(10)
driver.quit

driver = Selenium::WebDriver.for :chrome
driver.navigate.to "http://google.com"

element = driver.find_element(:name, 'q')
element.send_keys ARGV[2]
element.submit

puts driver.title
sleep(10)
driver.quit

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

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

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

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

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

guest

回答2

0

現在書かれているコードではそうなりますね。

コマンドラインで渡した値をGoogle Chromeでグーグル検索するプログラムを書いたのですが、

ChromeのWindowが検索終了後閉じてしまいます。

Sleepを入れて対処してみたのですが、これだと複数の単語を検索した際に

前の検索が終わって10秒経ってから閉じてまた検索して10秒、、、

ここで言われているのは私も ota さんのコードで解決できると思います。

検索結果のWindowを保持したまま、次の検索を表示するにはどのようにすれば

いいでしょうか?

投稿2018/11/07 00:46

oh_rusty_nail

総合スコア319

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

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

slc7z

2018/12/06 11:36

返事が遅くなってしまい恐れ入ります。 回答ありがとうございました。 参考にさせて頂きます。
guest

0

検索結果のWindowを保持したまま、次の検索を表示するには

という意味がちょっとわかりませんが、

Ruby

1require "selenium-webdriver" 2 3driver = Selenium::WebDriver.for :chrome 4 5ARGV.each do |search| 6 driver.navigate.to "http://google.com" 7 8 element = driver.find_element(:name, 'q') 9 element.send_keys search 10 element.submit 11 12 puts driver.title 13 sleep(10) 14end 15driver.quit

ということですかね?

投稿2018/11/04 13:36

otn

総合スコア84555

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

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

slc7z

2018/11/05 06:35

回答ありがとうございます。 ChromeDevToolを使うのですか? 始めたばかりでよく意味が分からないのですが、 テキストかcsvで書き出してある、検索ワードを一つ一つ ブラウザで表示して検索単語ごとに開いたブラウザ画面は維持しておきたい と考えたのですが、 プログラミングを書いたら、順次検索することはできるのですが、 前の検索結果を表示し終え、終了して次の検索結果に移るというプログラミングしか 掛けませんでした。 出来ればヒントだけでも頂けるとうれしいのですが、 どのように書けばいいのでしょうか??
otn

2018/11/05 06:37

> ChromeDevToolを使うのですか? 何の事ですか?私の回答と何か関係がありますか? > どのように書けばいいのでしょうか?? 私の書いた回答で、希望を満たさない点を具体的に書いてください。
slc7z

2018/12/06 11:36

返事が遅くなり大変申し訳ございます。 参考になりましたありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問