「㌧」のことは置いといて、(1)と(2)を組み合わせてみた。細かいことは後から考えよう。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
2ちゃんねるログを読み込んで整形してhtmlとして出力する
'''
import re
import sys
import codecs
def parseRes( res, n ):
ar = re.split( '<>', res )
num = str(n)
ret = '<dt id=\'dt' + num + '\'>' + num + u': 名前:<span class="name">'
if ar[1]:
ret += '<a href="mailto:' + ar[1] + '">'
ret += ar[0]
if ar[1]:
ret += '</a>'
ret += '</span> ' + ar[2]
ret += '</dt>\n<dd id=\'dd' + num + '\'>'
ret += ar[3] + '</dd>\n'
return ret
print 'Content-Type: text/html;charset;Shift_JIS'
print
print '''
<html>
<head><title>prototype</title>
<meta http-equiv="Content-Type" content='text/html; charset="Shift_JIS"' />
</head>
<body>
<dl>
'''
fout = codecs.getwriter('shift_jis')(sys.stdout)
log = codecs.open('1111198050.dat', 'r', 'shift_jis', 'ignore' )
res = 1;
for line in log:
fout.write( parseRes( line, res ) )
res += 1
print '