2010年12月7日火曜日

AppleScriptでAmazon Associateリンクを作る

アソシエイトツールバーで作成されるリンクがブログのデザインにあわないので、もっとシンプルなモノしたいなあと。
しかもFirefoxやChromeなら便利なエクステンションがあるのにSafariでやりたいぞと。
そいうわけで調べてみました。



以下を参考に
Make Link を使って Amazon アソシエイトの個別商品リンクを作る - かたつむりくんのWWW
http://www.tinybeans.net/blog/2008/10/14-131352.html

apeirophobia: Make Linkでサムネイル付きアマゾンアフェリエイトのリンクを作る
http://blog.img8.com/archives/2008/02/003587.html

元にしたスクリプトはFirefoxのアドオンMake Link用
同じ書き方で、Chromeの拡張機能Create Linkでも使える

参考にしたスクリプト
<a href="http://www.amazon.co.jp/exec/obidos/ASIN/%text%/[アマゾンアフェリエイトID]" target="_blank"><img src="http://images-jp.amazon.com/images/P/%text%.09._SX150_SCLZZZZZZZ_.jpg" class="thumb" />%title%</a>


変更後のスクリプト
tell application "Safari" 
 set theURL to URL of document 1 as Unicode text
 set theTitle to name of document 1 as Unicode text
 set theSelection to do JavaScript "unescape(escape(getSelection()));" in document 1
end tell

if theSelection is "" then
 set theText to "<a href="" & theURL & "" title="" & theTitle & "">" & theTitle & "</a>"
else
 set theText to "<a href="http://www.amazon.co.jp/exec/obidos/ASIN/" & theSelection & "/あなたのあまぞんあそしえいとあいでぃー" target="_blank"><img src="http://images-jp.amazon.com/images/P/" & theSelection & ".09._SX150_SCLZZZZZZZ_.jpg" class="thumb" /><br>" & theTitle & "</a>"
 
 
end if

set the clipboard to theText as Unicode text


スクリーンショット


注意点
"をエスケープしないとコンパイルエラーになる。\"と置換してやる。

完成したapplescript.appを
~/Library/Scripts/Applications/Safari
に保存
フォルダが無ければ作る。

[その他]

メニューバーにスクリプトメニューが表示されるようになっていれば、Safariのウィンドウがアクティブになっている時だけスクリプトメニューに表示される

_SX150_SCLZZZZZZZ_の数字150を変更すると画像の大きさを変更できる。
_SX150_SCLZZZZZZZ_をMZZZZZZZ.jpgやLZZZZZZZ.jpgやTHUMBZZZ.jpgにしても画像の大きさを変更できる。

[参考]

Make Link を使って Amazon アソシエイトの個別商品リンクを作る - かたつむりくんのWWW
http://www.tinybeans.net/blog/2008/10/14-131352.html

apeirophobia: Make Linkでサムネイル付きアマゾンアフェリエイトのリンクを作る
http://blog.img8.com/archives/2008/02/003587.html

0 コメント: