Amazon.co.jpアソシエイトのオリジナルリンクを簡単に作成する

誰でも使えると言う方法ではありませんが、少し慣れて頑張れば
WEB上で貼り付け可能な、いろんな自分用 HTML を作成できます

( IE 限定です )
必要なソフト
こちら で紹介したものをダウンロードしてインストールすると、IE 上のコンテテンツの情報を
クリップボードにコピーできるようになりますが、そのうちの −◎AMAZON リンク と、
−◎この画像で続きを読むリンク は、見本として作成した私の環境に特化したものです。

しかし、このサンプルの意味を解って「少し改造」すれば、
きっと便利なツールとして、ブログやサイト作成を助ける事になると思います
レジストリの状態
インストールしてレジストリエディタで確認すると、上のようになっているはずですが、
Html にセットされた文字列が基本の雛型で、UserId が自分のAmazon.co.jpアソシエイト用の ID です。

必要な場所に行って、右クリックで−◎AMAZON リンク を選ぶだけで
貼り付けるのに必要な HTML がクリップボードにコピーされる仕組みになっています。

以下は貼り付けられた文字列を解り易いように改行を付加したものですが、
Html の雛型から置き換えられたものは以下の3つです

1) レビューリンク 先の 4063289273 ( ASIN と呼ばれる商品コードです )
2) 画像の URL
3) UserId

※ 4063289273 は、画像の URL から 正規表現で取り出して使っています。
<a
	href="http://webase.winofsql.jp/review2.php?code=4063289273&bbc=000000&bc=343434&col=A0C1DE&bcimg=000000&type=0"
	target="_blank"
>レビューリンク</a>
<br /><br />
<a
	href="http://www.amazon.co.jp/exec/obidos/ASIN/4063289273/ginpro-22"
	target="_blank"
><img
	src="http://ecx.images-amazon.com/images/I/51ZEQXTETCL.jpg"
	galleryimg="no"
	border="1"
	style='border-color:#000000'
/></a>
以下に、元の Html 文字列を示します( こちらも改行を付加しています )
<a
	href="http://webase.winofsql.jp/review2.php?code=$ASIN&bbc=000000&bc=343434&col=A0C1DE&bcimg=000000&type=0"
	target="_blank"
>レビューリンク</a>
<br /><br />
<a
	href="$URL"
	target="_blank"
><img
	src="$SRC"
	galleryimg="no"
	border="1"
	style='border-color:#000000'
/></a>
レビューリンクは私の WEB アプリケーションで、ASIN を渡すと最も大きい画像を使って Amazon へのリンク
を作成すると同時にレビューの内容も表示します


HTML作成用のアプリケーション
右クリックした時の基点は「画像」です。
この画像が Amazon の画像で、それを挟むようにアンカーがあるという前提です。

ですから、アンカーの href が strUrl となります

この URL で Amamzon にジャンプしている HTML をそのまま使用して加工するわけです。
この URL 内には ASIN が含まれていますので、正規表現で取り出して strAsin と
します。画像の URL は最初に str セットしてあるので、strUrl 内の id を変更したら、
目的の文字列を作成する準備が整って、最後は置換するだけです


strText = Replace(strText, "$ASIN", strAsin)
strText = Replace(strText, "$URL", strUrl)
strText = Replace(strText, "$SRC", str)
menuex_image3_html.vbs
<meta http-equiv="content-type" content="text/html; charset=SHIFT_JIS">
<SCRIPT language="VBScript">

	Dim obj,str,strText,WshShell,strUrl,strId,regEx,Matches,strAsin

	' レジストリ用
	Set WshShell = CreateObject("WScript.Shell")

	on error resume next
	' *************************************************
	' カーソル下のオブジェクト
	' *************************************************
	Set obj = external.menuArguments.event.srcElement

	' *************************************************
	' 画像専用処理( レジストリ 0x2 )
	' *************************************************
	str = external.menuArguments.event.srcElement.src
	if Err.Number <> 0 then
		str = "URL を取得できませんでした"
	else
		strText = "HKCU\Software\Microsoft\Internet Explorer"
		strText = strText & "\MenuExt\−◎AMAZON リンク\Html"
		strText = WshShell.RegRead(strText)

		strId = "HKCU\Software\Microsoft\Internet Explorer"
		strId = strId & "\MenuExt\−◎AMAZON リンク\UserId"
		strId = WshShell.RegRead(strId)

		Set obj = external.menuArguments.event.srcElement.parentNode
		strUrl = obj.href
		strUrl = Replace(strUrl, "argusobnurd", strId)

		Set regEx = New RegExp
 
		regEx.IgnoreCase	= True
		regEx.Global		= True
 
		regEx.Pattern = "ASIN/([^/]+)/"
 
		Set Matches = regEx.Execute( strUrl )	' 検索
		For Each Match in Matches
			strAsin = Match.SubMatches(0)
		Next

		strText = Replace(strText, "$ASIN", strAsin)
		strText = Replace(strText, "$URL", strUrl)
		strText = Replace(strText, "$SRC", str)

		' 取得できたらクリップボードにセット
		Call window.clipboardData.setData("Text",strText)

		str = strText
	end if
	on error goto 0

	alert(str)

</SCRIPT>
登録するレジストリの場所と記述方法を間違わなければ、スクリプトの名前も
内容も、オプションとしてのレジストリのエントリ( ここでは Html と UserId )
の指定は全て自由です。

ここでは、元の Amamzon 用のリンクから加工する事を前提にしていますが、
私が作成した、amazon レビュー情報表示 という WEB アプリケーションがあるので、誰でも利用可能です

それでも、ASIN だけは調べないといけないので、http://www.amazon.co.jp へ行って検索してその商品のページ
に行って URL からコピーするか、少し下へスクロールして 商品の詳細 というのを探せば、
10ケタの ID が表示されていると思います

↓は実際に作成したリンクです
レビューリンク