Sat, 09 Jul 2005

bk1用リンク for reStructuredText

読んだ本の写真を貼り付けるのにbk1の簡単リンク君を使ったりするんだけど、結果が表示されるまでがめちゃめちゃ遅い。もういらいらする。

なので怒りに任せて、 「bk1用リンク for reStructuredText」 を作ってみた。

#!/usr/bin/env python
# -*- coding: utf-8 -*-

# ver 0.2 (205/07/08)
#
# Description:
#      create bk1 breeder link for reStructuredText.
#

import sys
import urllib
import re

partnerid = 'your breeder id here'

def create_bk1_link(url,title,partnerid):
       productid = url.split('/')[-1]

       img_dir = '%s'%productid[:4]

       title_base = '|%(title)s| `%(title)s`__'%vars()

       img_base = '.. |%(title)s| image:: http://img.bk1.co.jp/bookimages'%vars()
       # small image
#      img_ext = '/%(img_dir)s/%(productid)s0000_s.jpg'%vars()
       # big image
       img_ext = '/%(img_dir)s/%(productid)s0000.jpg'%vars()

       page_base = '.. __: http://www.bk1.co.jp/product'
       page_ext = '/%(productid)s/%(partnerid)s'%vars()

       return title_base+'\n\n'+img_base+img_ext+ \
                  '\n'+page_base+page_ext

if __name__ == '__main__':
       if len(sys.argv) != 2:
               print "Usage: python link_bk1.py product_url"
       else:
               url = sys.argv[1]
               data = urllib.urlopen(url)

               ret = re.search('<h1>(.*)</h1>',data.read(),re.S)
               if ret:
                       title = ret.group(1).replace('\r\n','')
                       title = title.replace('<br>',' - ')
               else:
                       title = ''

               print create_bk1_link(url,title,partnerid)

使い方は、以下のよう。例えば、HUNTER x HUNTER 22巻なら

$ python link_bk1.py http://www.bk1.co.jp/product/02568523

となります。

えっ? bk1用リンクのしかもreStructuredText用のコードなんか使う人いるのかって?

つーん、つーーーん、つーーーーーーん。いいもんね。一人で使うから。

と思ったら今日見たら「簡単リンクくんはサーバーメンテナンス中のためご利用いただけません。」になってた。実は改善されてめちゃめちゃ快適になっちゃったりして。


Mon, 04 Jul 2005

bk1ランキングボード

サイドバーに表示してみた。

[コンピュータ・情報科学]系のランキングが自分のサイトで見れたら楽ちんかなとおもったんだけど、何回設定しても、ジャンルが指定したものにならないし、背景色も指定したものにならないし・・・

しばらく放置して改善がないようなら削除するかな。