[ruby-list:49965] Re: [質問] RubyからIE操作 ie.Document.All.???.click

From: MasakiSuketa <masaki.suketa@...>
Date: 2014-09-10 10:01:39 UTC
List: ruby-list #49965
助田です。

On Wed, Sep 10, 2014 at 01:31:14PM +0900, yamataka@u08.itscom.net wrote:

> > で、勤務ログインボタンを押して勤務画面を表示した後の
> > ブラウザのURL入力欄は変わらず
> >  "http://www.cae.foo.co.jp/" 
> > のままなんですよね?
> 
> スクリプト内の
> ie.document.all.b_kinmu_login.click
> が実行され、勤務画面に遷移し、
> ブラウザのURL入力欄は、下記のURLとなります。
> https://kinmu.case.foo.co.jp/cndb03/WPSM_Menu.P_MainFrame
> 
> > その状態(勤務画面を表示した状態)で
> >   print ie.document.url + "\n"
> > と実行すると
> >  "http://www.cae.foo.co.jp/" 
> > ということでよいですか?
> 
> はい。
> "http://www.case.foo.co.jp/" 
> となります。 

だとすると、私が、想像で思いつくのは
print ie.document.url + "\n"
の実行のタイミングが早すぎるんじゃないかということ
ぐらいです。

勤務画面の表示が終わるより前に
ie.document.urlが実行しているために
遷移する前の最初のURLが表示されてしまうのではないかと
思います。

sleepで何秒か処理を遅らせてから

  print ie.document.url + "\n"

すると
https://kinmu.case.foo.co.jp/cndb03/WPSM_Menu.P_MainFrame
になりませんか?

また、勤務画面に遷移した後で実行した
puts ie.document.all(0).outerHTML
(かまたは、puts ie.document.all(1).outerHTML)
の出力結果と
ブラウザのメニューからソースを表示したときの内容は
同じになりますか?

同じになれば、そこから frameを経由して勤務一覧リンクに
たどりつける可能性があると思います。

  助田

In This Thread