トップへ戻る

Autoitプログラミング

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)