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

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

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

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

selenium

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

Q&A

解決済

2回答

2785閲覧

PhantomJSでログイン情報を保持したい。

yuki_90453

総合スコア326

Ruby

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

selenium

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

0グッド

1クリップ

投稿2017/01/25 10:01

編集2017/01/26 10:24

Selenium + PhantomJSでログインが必要なページのスクレイピングを行っているのですが接続の度にログインする動作を省略したいと考えております。

firefoxではプロファイルを駆使し、ログインを省略する方法があるみたいですが、PhantomJSで同じ方法で、ログインを省略する方法がわかりません。

またパスワードを保持しているのはcookieだと思うのですが、おそらくPhantomJS
ではCookieを都度、破棄しているのではないかと思います。(理由は、PhantomJSでアクセスしてもログイン画面が出て来るから)

日本語では調べたのですが、該当するような記事は見つからず、英語圏でも探しているのですが、いまいちそれらしい記事が見当たりません。

PhantomJSでログインを省略するには、どのようにすればすれば良いか、キーワードや記事なんでも良いので教えて下さい。

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

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

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

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

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

guest

回答2

0

ベストアンサー

cookieだと思うのですが、おそらくPhantomJSではCookieを都度、破棄しているのではないかと思います。

ふむふむ、たしかにCookieでログイン情報を管理してますからね。
そしてPhantomJSは公式サイトの左下にもあるようにテスト用ブラウザですからね、
クッキーがあったり無かったりしてログイン状況が勝手に切り替わったら困りますので、ブラウザーが終了する度にクッキーは捨ててますね。

日本語では調べたのですが、該当するような記事は見つからず、英語圏でも探しているのですが、いまいちそれらしい記事が見当たりません。

どうしてこうなった!

クッキー情報もちゃんとコードで書いて制御しましょう。
終了させる前にクッキー情報をコンソールやファイル等に書き出しておいて、
次の実行時に設定するように記述すれば望んでいる動きになるかと思います。

投稿2017/01/26 10:48

miyabi-sun

総合スコア21158

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

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

guest

0

JavaScriptを使う方法があります。
毎回ログイン画面へ遷移するのは避けられないかもしれませんが、大体の場合自動化できます。
GetElementByIdやGetElementsByTagNameなどを駆使します。

参考:http://tips.hecomi.com/entry/20121229/1356785834

投稿2017/01/26 10:30

askyq

総合スコア46

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問