メインコンテンツに移動
mattz.xii.jp

Main navigation

  • Home
  • YBR125メモ
User account menu
  • ログイン

パンくず

  1. ホーム

2ちゃんねるログビューアを作成する(2)

By mattz, 2008/05/22

今日は先に書いたコードから。「Pythonで日本語を使う」を参考に、Shift_JISで保存されている.datファイルを読み込んで、そのまま標準出力に出す。つもりだった。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
Shift_JISのファイルを読み込んで出力する。
'''
import sys
import codecs
fout = codecs.getwriter('shift_jis')(sys.stdout)
log = codecs.open('1111198050.dat', 'r', 'shift_jis') # 実際にはフルパス
for line in log:
        fout.write( line )

とりあえず、コンソールから実行してみたところ、途中までは問題なく出力されるのだが、ある行を処理するところで、エラーメッセージ。が出て中断 してしまう。

UnicodeDecodeError: 'shift_jis' codec can't decode bytes in position 158-159: illegal multibyte sequence

引っかかっている文字は「㌧」。この手の文字は2ちゃんねるでは頻繁に使われるしなぁ。どうしたらいいんだろ?とりあずここ読んで勉強するわ。

追記

codecs.open()のところで、'ignore'オプションをつけてやれば、ファイルの最後までは処理されるようにはなった。けど、解決にはなってない。なってはいないけどここまでの経過として修正版

#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
Shift_JISのファイルを読み込んで出力する。
'''
import sys
import codecs
fout = codecs.getwriter('shift_jis')(sys.stdout)
log = codecs.open('1111198050.dat', 'r', 'shift_jis', 'ignore' )
print 'Content-Type: text/plain;charset;shift_jis'
print
for line in log:
        fout.write( line )

→実行結果がかつてはリンクされていました。

タグ

  • Python
前のエントリー次のエントリー

最近のエントリー

  • 2025シーズン セ・パ12球団の総移動距離
  • 2023年度 パシフィック・リーグ主催試合ヒーローインタビューランキング
  • 2024シーズン セ・パ12球団の総移動距離
  • 当サイトのDrupalが10になりました
  • E-Vinoを買ってみました
  • 2023シーズン セ・パ12球団の総移動距離
  • 俺は野球殿堂博物館を甘く見ていた
  • 2022シーズン セ・パ12球団の総移動距離
  • Drupalを9にあげてみました
  • 2021シーズン セ・パ12球団の総移動距離

月別アーカイブ

  • 6月 2025 (50)
  • 12月 2024 (1)
  • 11月 2023 (3)
  • 10月 2023 (1)
  • 12月 2022 (1)
  • 4月 2022 (1)
  • 12月 2021 (1)
  • 2月 2021 (1)
  • 11月 2020 (1)
  • 7月 2020 (1)
  • 12月 2019 (1)
  • 7月 2019 (2)
  • 5月 2019 (3)
  • 3月 2019 (1)
  • 2月 2019 (1)
  • 12月 2018 (1)
  • 12月 2017 (1)
  • 1月 2017 (1)
  • 5月 2016 (1)
  • 2月 2016 (1)
  • 2月 2015 (2)
  • 11月 2014 (1)
  • 7月 2014 (1)
  • 6月 2014 (1)
  • 5月 2014 (1)
  • 2月 2014 (1)
  • 12月 2013 (1)
  • 11月 2013 (1)
  • 10月 2013 (1)
  • 6月 2013 (1)
  • 5月 2013 (1)
  • 3月 2013 (2)
  • 2月 2013 (1)
  • 1月 2013 (2)
  • 12月 2012 (1)
  • 11月 2012 (1)
  • 10月 2012 (4)
  • 9月 2012 (1)
  • 8月 2012 (2)
  • 6月 2012 (2)
  • 5月 2012 (1)
  • 3月 2012 (5)
  • 2月 2012 (1)
  • 1月 2012 (3)
  • 12月 2011 (1)
  • 10月 2011 (1)
  • 7月 2011 (4)
  • 6月 2011 (3)
  • 5月 2011 (2)
  • 4月 2011 (7)
  • 3月 2011 (4)
  • 2月 2011 (1)
  • 1月 2011 (2)
  • 12月 2010 (2)
  • 11月 2010 (2)
  • 10月 2010 (5)
  • 9月 2010 (5)
  • 8月 2010 (1)
  • 7月 2010 (6)
  • 6月 2010 (6)
  • 5月 2010 (4)
  • 4月 2010 (6)
  • 3月 2010 (14)
  • 2月 2010 (10)
  • 1月 2010 (6)
  • 12月 2009 (11)
  • 11月 2009 (10)
  • 10月 2009 (13)
  • 9月 2009 (23)
  • 8月 2009 (12)
  • 7月 2009 (23)
  • 6月 2009 (22)
  • 5月 2009 (40)
  • 4月 2009 (6)
  • 3月 2009 (6)
  • 2月 2009 (6)
  • 1月 2009 (12)
  • 12月 2008 (15)
  • 11月 2008 (13)
  • 10月 2008 (10)
  • 9月 2008 (12)
  • 8月 2008 (19)
  • 7月 2008 (15)
  • 6月 2008 (45)
  • 5月 2008 (29)
RSS feed