UserPreferences

UselessCode/ISBN


Amazonへのリンクを挿入してアフェリエイトプログラムに参加するためのコード。 [[ISBN(4900790052)]] とかやると [Amazon/rakuten/bk1/旭屋/Jbook/紀伊國屋/富士山] のように出力される。 引数がないときは検索フォームで。
  1 
  2 
  3 
  4 
  5 
  6 
  7 
  8 
  9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
 20 
 21 
 22 
 23 
 24 
 25 
 26 
 27 
 28 
 29 
 30 
 31 
 32 
 33 
from MoinMoin import config, wikiutil


def isbnformat(isbn):
    return ('[<a href="http://www.amazon.co.jp/exec/obidos/ASIN/%s/morimoin-22">Amazon</a>/' % isbn +
            '<a href="http://www.bk1.co.jp/cgi-bin/srch/srch_result_book.cgi?idx=3&amp;isbn=%s">bk1</a>/' % isbn +
            '<a href="http://www.netdirect.co.jp/search/ISSSchDetail.asp?ISBN=%s">旭屋</a>/' % isbn +
            '<a href="http://www.jbook.co.jp/product.asp?isbn=%s">Jbook</a>/' % isbn +
            '<a href="http://bookweb.kinokuniya.co.jp/guest/cgi-bin/wshosea.cgi?W-ISBN=%s">紀伊國屋</a>/' % isbn +
            '<a href="http://bsearch.rakuten.co.jp/Btitles?KEY=%s">楽天</a>/' % isbn +
            '<a href="http://www.fujisan.com/online/Jsearch?key=productcode&amp;value=%s">富士山</a>]' % isbn )

searchformat = """
<FORM METHOD="get" ACTION="http://www.amazon.co.jp/exec/obidos/external-search">
<input type=hidden name="mode" value="books-jp:add-us">
本の検索:
<INPUT TYPE="text" NAME="keyword" SIZE="20" VALUE="">
<INPUT TYPE="hidden" NAME="tag" VALUE="morimoin-22">
<INPUT TYPE="hidden" NAME="encoding-string-jp" VALUE="日本語">
<INPUT TYPE="submit" BORDER="0" VALUE="Go" NAME="Go">
</FORM>
"""

def execute(macro, args):
    link = ""
    # get ISBN
    if args and len(args) == 10:
        link = isbnformat(args)
    if not link:
        link = searchformat

    # return a link
    return macro.formatter.rawHTML(link)