英語PDFのOCRをPythonで行おうと考えており、tesseract (ターミナル上では動きます) と textract (こちらの手順に沿って) のインストールは正常に行えました。

しかし、以下のコードを実行した場合にエラーが出て文字を抽出できません。

text = textract.process(
    '/Users/Text/en.pdf',
    method='tesseract',
    language='eng',
)

エラー:

/usr/local/lib/python3.4/site-packages/textract-1.4.0-py3.4.egg/textract/parsers/pdf_parser.py in extract_tesseract(self, filename, **kwargs)
     62                 page_content = TesseractParser().extract(page_path, **kwargs)
     63                 contents.append(page_content)
---> 64             return ''.join(contents)
     65         finally:
     66             shutil.rmtree(temp_dir)

TypeError: sequence item 0: expected str instance, bytes found

pdf_parser.pyの修正を試みましたが、どれも失敗しました。

  1. return b''.join(contents)と書き換える
  2. Insert contents = [str(item) for item in contents]returnの前に
  3. Insert contents = [item.decode("utf-8") for item in contents]returnの前に

*こちらの質問は、stackoverflowのポストを訳したものです。どちらかで回答が得られた場合は、質問者が責任をもってもう片方に掲載します。よろしくお願い致します。