[ AppleScript ] Safari のサンプル

Safari の AppleScript サンプル集です。

Safari でページタイトルと URL をクリップボードにコピーする AppleScript サンプル
———————————————————————-

Safari で最前面に表示しているページの title と URL をクリップボードにコピーする AppleScript のサンプルです。

tell application "Safari"
  set ThisURL to do JavaScript "document.URL" in front document
  set ThisTitle to do JavaScript "document.title" in front document
  set the clipboard to "<a href=\"" & ThisURL & "\">" & ThisTitle & "</a>"
end tell

動作確認:Mac OS 10.4.5 + Safari 2.0.3

Safari のウインドウをリサイズする AppleScript サンプル
———————————————————————-

Safari のウインドウをリサイズする AppleScript です。小物ばっかでスミマセン(笑)

tell application "Safari"
  activate
  set bounds of window 1 to {800, 22, 1600, 1200}
end tell

動作確認:Mac OS 10.4.4 + Safari 2.0.3 + Script Editor 2.1.1

Safari で複数のサイトを一気に開く AppleScript サンプル
———————————————————————-

Firefox だと起動時にあらかじめ登録しておいた複数サイトをタブで開けるんですが、Safari には、そんな機能は無さげなので、複数のサイトを一気に開く AppleScript を書いてみました。

tell application "Safari"
  open location "http://www.yahoo.co.jp/"
  open location "http://www.google.co.jp/"
  open location "http://www.goo.ne.jp/"
end tell

とりあえず、こんな感じ。

Safari の環境設定で「アプリケーションでリンクを開く場合:現在のウインドウで新規タブに開く」を選択しておかないと、ウインドウが大量に開くかも…。

動作確認:Mac OS 10.4.7 + Safari 2.0.4

Safari で別ウインドウを開いて閉じる AppleScript サンプル
———————————————————————-

別ウインドウを開き、5秒後に違うページを表示して、ウインドウを閉じる AppleScript のサンプルです。

tell application "Safari"
  activate
  do JavaScript "window.open('http://www.yahoo.co.jp/','test');" in document 1
  delay 5
  do JavaScript "window.open('http://www.google.co.jp/','test');" in document 1
  delay 5
  do JavaScript "window.close('test');" in document 1
end tell

動作確認:Mac OS 10.4.5 + Safari 2.0.3

Safari で表示中のページを再読み込み ( リロード ) する AppleScript サンプル
———————————————————————-

Safari で表示中のページを再読み込み(リロード)する AppleScript のサンプルです。

tell application "Safari"
  do JavaScript "location.reload(true);" in document 1
end tell

mi で CSS を編集中、右側に確認用として表示している Safari をバックグラウンドでリロードできると便利だなと思って書いてみました。

なんですが、どうもキャッシュから読み込んでいるらしく、新しく編集した CSS は反映されませんでした。HTML なら反映できるんですけど。

動作確認:Mac OS 10.4.5 + Safari 2.0.3

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です