開発したWebアプリケーションで時折文字化けが起こるので調べてみたら原因が分かった。多分Genshiのバグだと思う。 HTMLParser.parse() in genshi/input.py: def _generate(): try: bufsize = 4 * 1024 # 4K done = False while 1: while not done and len(self._queue) == 0: data = self.source.read(bufsize) これだ! 検証コード >>> from genshi.input import HTML >>> unicode_text = u"あ" * 5000 >>> [(i, c) for i, c in enumerate(str(HTML(unicode_text)).decode('utf-8')) if c !=