• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:javascriptで作成されたIDとpasswordでログイン後の画面:LocationURLでURLを取得できません。)

javascriptでログイン画面のURLを取得できない理由と解決方法

このQ&Aのポイント
  • javascriptで作られたIDとpasswordでログイン後の画面で、LocationURLでURLを取得できない理由とは?どうやって解決する?
  • VB初心者がjavascriptで作られたログイン画面のURLを取得する方法はあるのか?activeXやプロパティを使ってURLを取得する方法を解説。
  • WebページのURLをLocationURLで取得できない場合、javascriptの仕様によるものかもしれない。このような場合、VBやactiveXのプロパティやメソッドを使用することでURLを取得する方法がある。

質問者が選んだベストアンサー

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.1

こんにちは。KenKen_SP です。 情報不足で現状がさっぱりわかりません。情報を出し惜しみしていては回答 はもらい難いですよ。 > javascriptで作られているようなのですが、実際このように隠すことが > できるのでしょうか。 > https://aaa.bbb.ccc.jp/?と最上部のアドレスが表示されるのみ 単純にフレームページなのだと思います。この場合ブラウザにはフレームを 切っている...HTML タグで言えば、FRAMESET が書かれたページの URL しか 表示されません。 現在どのような方法で LocationURL を取っているのか知りませんが、IE オブジェクトを使っていると仮定し、VB で書けばこんな感じでフレーム毎 の URL や HTMLソースなんかは取得できます。 同じくフレームページの MSDN をサンプルにしてます。このページは 3つ の Document で構成されてます。 ...エラー処理は皆無なのできちんと作ってません。(;´・ω・`)σ 間違いがあったり、意図の読み違いだった場合はスルーして下さい。では。 Sub Sample()      Dim IE  As Object   Dim n  As Long   Dim i  As Long   Dim Url As String      Const READYSTATE_COMPLETE = 4      Url = "http://msdn.microsoft.com/library/ja/"      Set IE = CreateObject("InternetExplorer.Application")   With IE     .Visible = True     .Navigate Url     While .Busy Or .ReadyState <> READYSTATE_COMPLETE     Wend     n = IE.Document.frames.Length     Debug.Print "【 Frames Count 】 " & CStr(n)     For i = 0 To n - 1       With IE.Document.frames(i).Document         Debug.Print "--------------------------------"         Debug.Print "【 Document URL 】 " & .Url         Debug.Print "--------------------------------"         Debug.Print "【 Document Source 】"         Debug.Print .documentElement.outerHTML       End With     Next   End With End Sub

daipot
質問者

お礼

ご回答ありがとうございます。ご指摘のとおり、フレームページでした。documentElement.outerHTMLでアドレスの残りの部分が得られました。

関連するQ&A

専門家に質問してみよう