IEで現在開いているページのタイトルとURLを取得
IEで現在開いているページのタイトルとURLを取得するサンプルコードを紹介します。
WinGetTitle 関数で現在開いているIEのアクティブなウィンドウのタイトルを取得します。
_IEAttach 関数でオブジェクト変数を取得し、_IEPropertyGet 関数でURLを取得します。
; 現在開いているページのURLを取得
#include <IE.au3>
$Title = "[CLASS:IEFrame]"
$Title = WinGetTitle($Title, "")
$oIE = _IEAttach($Title, "WindowTitle")
$oIE = _IEPropertyGet($oIE, "locationurl")
MsgBox(0, @error, 'タイトル:' & @CRLF & $Title & @CRLF & @CRLF & 'URL:' & @CRLF & $oIE)
Internet Explorer 11 の場合、上記のコードで取得すると、タイトルの最後に「 - Internet Explorer」と付いてしまうので、「 - Internet Explorer」の部分を削除してあげないと、$oIE = _IEAttach($Title, "WindowTitle") で指定したタイトルが一致(存在)しないため、URLが取得できません。
そのため、次のコードでは「 - Internet Explorer」の部分を StringRegExpReplace関数で削除しています。
; 現在開いているページのURLを取得
#include <IE.au3>
$Title = "[CLASS:IEFrame]"
$Title = StringRegExpReplace(WinGetTitle($Title, ""), " - .+","")
$oIE = _IEAttach($Title, "WindowTitle")
$oIE = _IEPropertyGet($oIE, "locationurl")
MsgBox(0, @error, 'タイトル:' & @CRLF & $Title & @CRLF & @CRLF & 'URL:' & @CRLF & $oIE)